La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 ISA e Asm: esempi e suggerimenti.

Presentazioni simili


Presentazione sul tema: "Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 ISA e Asm: esempi e suggerimenti."— Transcript della presentazione:

1 Corso di Laurea in Informatica Architettura degli elaboratori a.a ISA e Asm: esempi e suggerimenti

2 Obiettivi e suggerimenti Capire come sono codificate le istruzioni a livello macchina e come possono essere rappresentate Una istruzione macchina è sempre di 32 bit (1 Word) rappresentati spesso in esadecimale Per capire che istruzione è e cosa fa: 1.Convertire in binario 2.Guardare il codice operativo (opcode) (primo field dell’istruzione, bit 31:26), che consente di capire di che tipo di istruzione si tratta e quindi come i bit successivi vadano raggruppati in field 3.Guardare i singoli field, capirne il significato e capire in dettaglio cosa fa l’istruzione Come si fa? Suggerimenti: Usare la tabella Fig. A.10.2 dell’Appendice A del Patterson-Hennessy (Appendice B in edizioni più recenti rispetto a quella disponibile sul sito) La tabella è piuttosto complicata. Concentrarsi sulla prima colonna con intestazione op(31:26) e, se serve, sulla sesta con intestazione func(5:0). Le altre colonne sono relative a istruzioni “strane” che non saranno oggetto di esame (ma non è una cattiva idea guardarne qualcuna...) Cercare in Appendice A l’istruzione, ricavando il formato e il significato A.A ISA (esempi e suggerimenti)2

3 Esempio 1 (istruzione R-type) Istruzione hex: 0x010a4822 Binario: opcode: ovvero 0x00 ovvero 0 Dalla tabella (Fig. A.10.2, colonna 1): si capisce che è una istruzione di tipo R funct: ovvero 0x22 ovvero 34 Dalla tabella, colonna 6: istruzione “sub” Cercare “sub” in Appendice: Subtract Quindi i campi successivi a opcode sono: primo registro sorgente (5 bit) ovvero 0x08 ovvero 8 secondo registro sorgente (5 bit) ovvero 0x0a ovvero 10 registro destinazione (5 bit) ovvero 0x09 ovvero 9 il campo shamt non è rilevante per questa istruzione L’istruzione: sottrae il contenuto del registro 10 dal contenuto del registro 8 mette il risultato nel registro 9 Formati asm: sub $9, $8, $10 sub $t1, $t0, $t2 (vedere Fig. A.6.1) A.A ISA (esempi e suggerimenti)3

4 Esempio 2 (istruzione I-type) Istruzione hex: 0xad0a0000 Binario: opcode: ovvero 0x2b ovvero 43 Dalla tabella (Fig. A.10.2, colonna 1): istruzione “sw” Cercare “sw” in Appendice: Store word, da cui si capisce che: è una istruzione che fa riferimento a memoria (formato I) Quindi i campi successivi a opcode sono: registro base (5 bit) ovvero 0x08 ovvero 8 registro sorgente (5 bit) ovvero 0x0a ovvero 10 offset (spiazzamento) rispetto al registro base (16 bit) L’istruzione: memorizza il contenuto del registro 10 all’indirizzo ottenuto sommando offset e contenuto del registro base Formati asm: sw $10, 0($8) sw $t2, 0($t0) (vedere Fig. A.6.1) A.A ISA (esempi e suggerimenti)4


Scaricare ppt "Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 ISA e Asm: esempi e suggerimenti."

Presentazioni simili


Annunci Google