Architettura degli elaboratori, 23 Giugno 2010
Per A.A. precedente a 08/09 (6 crediti): esercizi 1-4
Per A.A. 08/09 e successivi (9 crediti): esercizi 1-5
(Indicare sul compito se il proprio piano di studi richiede 6 o 9 crediti)
Non e' ammesso l'uso di alcun testo, appunti o
calcolatrici. Le risposte vanno scritte nel foglio di bella copia. Si
raccomanda la massima SINTETICITA'. L'eccessiva verbosita' verra'
considerata negativamente.
Gli iscritti alla laurea
triennale debbono essersi prenotati sul portale studenti del nostro
ateneo. Se cio' non e' stato fatto, comunicatelo immediatamente
al docente o all'assistente in aula.
Se si passa lo scritto, si deve obbligatoriamente sostenere anche un
colloquio orale. Date ed orari degli orali
verranno indicati nella pagina dei risultati e sul Forum.
Esercizio 1
Descrivere le componenenti della macchina astratta IJVM
e la loro implementazione all'interno del sistema a livelli
studiato nel corso.
Esercizio 2
Supponiamo di voler modificare il comportamento dell'istruzione ISTORE,
in modo che il valore da inserire nella variabile possa essere recuperato con
tre modalita' di indirizzamento:
immediata (immediate), diretta (direct) e stack.
Implementare in Mic-1 tale nuova versione di ISTORE, supponendo che
in modalita' immediata il valore e' rappresentato con 1 byte ed in quella
diretta l'indirizzo e' rappresentato con 1 byte.
Esercizio 3
Scrivere un metodo assembly IJVM tale che
la rappresentazione in esadecimale dei byte che vengono inseriti nella Method Area
a seguito della sua traduzione sia:
0x00 0x05 0x00 0x03 0x15 0x02 0x59 0x36 0x06 0x84 0x06
0x04 0x10 0x03 0x59 0x9B 0x00 0x05 0x15 0x07 0x60 0xAC
(Si ricordi il significato dei primi 4 byte di un metodo
presente nella Method Area.)
Si programmi poi in assembly IJVM una chiamata a
tale metodo (utilizzando sempre il valore 0 per gli argomenti) e si
forniscano i byte della sua traduzione (rappresentati in esadicimale).
Esercizio 4
Abbiamo un bus di sistema con 8 linee per la parte Address.
Tra i vary chip collegati a bus c'e' una RAM con 2^7 celle di memoria
Vogliamo che le celle di tale RAM siano mappate nelle posizioni dispari dello
spazio di indirizzamento in cui la CPU puo' leggere o scrivere.
Descrivere l'interfacciamento tra le linee Address del bus
ed il segnale CS della RAM (che supponiamo essere asserito basso).
Descrivere inoltre la connessione tra le linee address del bus e le
linee address della RAM.
Esercizio 5
Cosa si intende per dipendenze di tipo RAW e di tipo WAR?
Tradurre il seguente codice in Mic-3
H = TOS
H = SP = SP - H
OPC = SP + H
Quale vantaggio in termini di velocita' di esecuzione
si ottiene passando dal codice fornito. eseguito sulla macchina Mic-2,
a quello ottenuto dalla traduzione ed eseguito sulla macchina Mic-3?