Corso di Architettura dell'Anno Accademico 2001-2002

15. Il Set di Istruzioni (1)

Precedente Su Successiva

[Materiale] [Riferimenti] [Schema] [Auto-verifica] [Esercizi] [Problemi]

Materiale disponibile

Sono disponibili le slide della lezione in formato PDF

bulletVersione a 6 lucidi per pagina (circa 58 Kb)
bulletVersione a 2 lucidi per pagina (circa 74 Kb)

Riferimenti bibliografici

bullet

[Patterson]: Cap. 3 (par. 1, 2 e 3)

Schema della lezione

bullet

La programmazione dei calcolatori

bullet

Alcuni principi progettuali

bullet

Introduzione al linguaggio macchina MIPS
bullet

operazioni

bullet

operandi

bullet

Operazioni
bullet

aritmetiche (add e sub)

bullet

di trasferimento dati (lw e sw)

bullet

Indirizzamento indicizzato della memoria

Auto-verifica della comprensione degli argomenti della lezione

Domanda: "Cosa si intende per auto-verifica?"
bullet

Quali sono i principi guida per la progettazione di un linguaggio macchina?

bullet

Quali sono i requisiti tra cui bisogna "mediare" una soluzione?

bullet

Perché i registri "devono" essere pochi?

bullet

Perché i registri "devono" essere in numero potenza di due?

bullet

Cosa fanno le istruzioni di add e sub?

bullet

Perché servono le istruzioni di trasferimento dati?

bullet

Come indirizza i dati da caricare in un registro la istruzione lw?

bullet

Come indirizza i dati da prelevare da un registro la istruzione sw?

bullet

Perché le istruzioni di trasferimento dati devono essere almeno 2?

Esercizi

bullet

Come si fa a realizzare la istruzione (C) g = h + A[i] ? (Vedere esempi a pag. 95)

bullet

Scrivere un programma che, assumendo di avere dei valori nei registri $s0, $s1 e $s2  scriva nella parola con indirizzo 1000 la somma dei tre registri.

bullet

Scrivere un programma che, assumendo di avere nel registro $s0 il valore 10, nel registro $1 il valore 4, nel registro $2 il valore 3, scriva nelle parole con indirizzo 1000, 1004, 1008, rispettivamente il valore 10, 13 e 16.

Problemi

bullet

Che tipo di indirizzamento dovremmo avere a disposizione per poter fare a meno dell'indirizzamento indicizzato?

bullet

Perché le istruzioni di trasferimento dati lw e sw prevedono un metodo di indirizzamento dati indicizzato? 
bullet

Non sarebbe stato più facile prevedere un indirizzamento "diretto" vale a dire specificare direttamente la locazione di memoria da cui (o verso cui) prelevare (o scrivere) il dato di un registro?

 

Modificato il: 10/03/03 (09.41)
 
Vittorio Scarano
Dipartimento di Informatica ed Applicazioni "R.M. Capocelli"
Università di Salerno
vitsca@unisa.it