Domande sul SecondoProgetto2002



Esempio di domanda

  • Date un titolo alla domanda
  • firmate
  • separate le domande con una riga (----)

-- AndreaSterbini - 29 Mar 2002


Allineamento

Che cosa è l'allineamento della memoria?

-- AlbertoRocca - 07 Apr 2002

Si dice che una struttura dati è allineata alla potenza n quando il suo indirizzo è multiplo di 2^n. Questo si ottiene con la direttiva

   .align *n*

Alcune istruzioni di SPIM operano solo su indirizzi multipli di una word (multipli di 4) altrimenti scatenano una eccezione. Per questo se vedete apparire una eccezione che dice unaligned ...

  • o avete fatto un errore
  • oppure c'e' bisogno di inserire nella zona dati la direttiva
   .align 2

-- AndreaSterbini - 08 Apr 2002


Byte o word?

Il vettore impacchettato deve essere un vettore di byte o puo' anche essere di word?

-- AlbertoRocca - 10 Apr 2002

A piacere smile

-- AndreaSterbini - 11 Apr 2002


Lunghezza elementi

Se per il vettore packed possiamo usare le word, il fatto che gli elementi hanno lunghezza pari a 13 bit entra in gioco solo nella fase successiva di spacchettamento? Nel vettore packed, usando le word, per i numeri negativi, dobbiamo estendere il segno solo fino al 13ismo bit o per tutta la lunghezza della word?

-- StefanoPalma - 30 Apr 2002

La lunghezza degli elementi (13 bit) entra in gioco:

  • quando dovete inserire i valori nel vettore packed
  • quando dovete spacchettare il vettore e produrre il vettore spacchettato
L'estensione/contrazione del segno entra in gioco nel passare:
  • dal numero chiesto in input alla sua versione di 13 bit da memorizzare nel vettore packed
  • nel passare dall'elemento packed a quello unpacked (che è più lungo)

-- AndreaSterbini - 30 Apr 2002


Formato di Stampa

Nella stampa del vettore bisogna rispettare il formato dei numeri in complemento a 2 o bisogna stampare gli equivalenti interi?

La formattazione dell'elenco dei numeri per la stampa a video deve consistere semplicemente di una lista di numeri separati da righe oppure dobbiamo, che so, mettere "posizione del vettore : numero in complemento a 2 (equivalente intero)" o qualche altra specifica?

-- FabioMendicino - 01 May 2002

Stampate i numeri risultanti ... (e' la stessa cosa, visto che la syscall stampa_intero stampa un numero nel formato in complemento a due).

Basta la lista dei numeri separati da spazio.

-- AndreaSterbini - 01 May 2002


Input

Quello che non ho capito e se da input dobbiamo inserire un intero oppure la stringa binaria, cioè per esempio che so, -45 oppure 10011101...; per questo motivo avevo chiesto tra l'altro se dovessimo stampare il numero in complemento a 2 come serie di 13 bit oppure se bastasse la syscall stampa_intero!

-- FabioMendicino - 05 May 2002

Inserite interi decimali col segno nel range rappresentabile nel formato in complemento a 2 con 13 bits (fatevi due conti).

Sarà la syscall read_integer a convertirveli in formato in complemento a due ... da 32 bit.

-- AndreaSterbini - 06 May 2002


Metodo

Purtroppo venerdì sono entrato cinque minuti dopo l'inizio della lezione e mi sono perso la prima indicazione sul secondo progetto, non è che può accennarmi qualcosa?

Seconda cosa, è importante che si usi un metodo ben definito oppure si può usare un qualsiasi metodo per impacchettare e spacchettare i numeri? (per esempio copia bit a bit tramite operazioni logiche e maschere)

-- FabioMendicino - 12 May 2002

Ho fatto notare che 13 bit entrano comodi in una word, che le word vanno lette allineate, da cui deriva che i 13 bit possono cadere a cavallo di due word .... ma che se guardate bene le istruzioni del MIPS riuscite a tenere i 13 bit sempre all'interno della word.

Usate la tecnica che volete per impacchettare/spacchettare ... basta che sia corretta.

-- AndreaSterbini - 13 May


Input2

Volevo una conferma!!! Allora la stringa di input deve essere in decimale, al massimo rappresentabile su 13 bit, cioè il decimale massimo rappresentabile su 2^13, e impacchettarlo in una word che e formata da 32 bit, lasciando a zero i 19 bit restanti. Inoltre volevo sapere dovo posso trovare le istruzioni del MIPS.

-- MassimoOrazzo - 14 May 2002

La syscall read_integer legge un intero (scritto in notazione decimale, col segno) e torna un numero nel formato in complemento a 2 di 32 bits.

Per le istruzioni guarda nella documentazione in attachment alla pagina SimulatoreSpim.

-- AndreaSterbini - 15 May 2002


Ricorsione = uso dello stack?

Un algoritmo ricorsivo prevede esclusivamente l'uso dello stack oppure si possono utilizzare altri metodi, che comunque mantengono l'idea della ricorsione?

-- AlessandroLonghi - 29 May 2002

La risposta breve è: usate lo stack.

La riposta lunga è: mi dici come implementi il salvataggio/ripristino dei parametri in un modo più semplice dello stack?

-- AndreaSterbini - 30 May 2002

Edit | Attach | Watch | Print version | History: r18 < r17 < r16 < r15 < r14 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r18 - 2002-05-30 - AndreaSterbini






 
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback