Lucidi - Dipartimento di ingegneria elettrica ed elettronica

Transcript

Lucidi - Dipartimento di ingegneria elettrica ed elettronica
Il set di istruzioni di macchina
Calcolatori Elettronici
Prof. Gian Luca Marcialis
Corso di Laurea in Ingegneria Elettronica
Capitolo 4
Unità Centrale di Elaborazione – Istruzioni Macchina
Fonti Principali: Stallings, W., "Architettura e organizzazione dei calcolatori,
progetto e prestazioni", Pearson Education Italia Srl, 2004 (ISBN: 88-7192-2018), Capp. 10, 11, 12.
• Il progetto e l’implementazione di una CPU
riguarda in gran parte la definizione, la
progettazione e l’implementazione del “set” di
istruzioni che la CPU deve realizzare
• Il set delle istruzioni è una parte dell’architettura
del calcolatore che non risulta trasparente
all’utente
• Il set delle istruzioni è quasi interamente
accessibile all’utente che programma in assembly
—eccetto istruzioni riservate al Sistema Operativo
Calcolatori Elettronici
Principali elementi di un’istruzione di
macchina
CPU Prof. Ing. G.L. Marcialis
2
Memorizzazione di operandi e risultato
• Codice operativo (“Op code”)
• In memoria, principale o virtuale
• In registri della CPU
—specifica cosa deve essere fatto
• Indirizzo degli operandi di ingresso
—l’operazione richiede uno o più operandi e ne deve
specificare la “posizione”
• Indirizzo del risultato
—se ci sono più registri, a ognuno è assegnato un
indirizzo
• In dispositivi di I/O
—il risultato dell’operazione deve essere memorizzato da
qualche parte
• Riferimento alla prossima istruzione
—di solito implicito
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
3
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
4
Rappresentazione dell’istruzione
Rappresentazione simbolica
dell’istruzione macchina
• Un’istruzione di macchina è rappresentata
mediante una stringa di bit
• Tale stringa è suddivisa in campi che ne
definiscono il formato
• In generale, non esiste un unico formato per
tutte le istruzioni
• E’ difficile sapere interpretare a prima vista una
stringa di bit
• Per cui si ricorre a una rappresentazione
simbolica dell’istruzione di macchina
• Es. ADD R, Y
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
5
—R è un registro della CPU
—Y è l’indirizzo di una locazione di memoria
—ADD è l’op code
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
Linguaggi di alto e basso livello
Classi di istruzioni
• Riferendosi a un programma scritto in istruzioni
simboliche di solito si parla di “assembly”
• Oggi è raro trovare codice scritto direttamente in
assembly, mentre è consuetudine utilizzare linguaggi di
alto livello (C, C++, Java)
• E’ necessario dunque un “traduttore” da un linguaggio di
alto livello a uno di basso livello, l’unico veramente
“comprensibile” al calcolatore
• Data processing (elaborazione dati)
• Es. istruzione di alto • Corrispondenti istruzioni di
livello:
macchina:
X=X+Y
LOAD R, X
ADD R, Y
STORE R, X
• Controllo del flusso di esecuzione
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
7
6
—istruzioni logiche e aritmetiche
• Memorizzazione
—istruzioni di trasferimento dati da/a memoria a/da
registri
• I/O
—trasferimento dati e programmi da/a dispositivi di I/O
a/da memoria
—salto
—chiamata a procedura
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
8
Numero di indirizzi per istruzione
Numero di indirizzi: vantaggi e svantaggi
• Specificano il numero di operandi (in ingresso e
in uscita) “supportati” dall’istruzione
• Sono realizzate istruzioni a:
• Tre indirizzi determinano istruzioni “lunghe”
• Due indirizzi devono essere trattati con cautela per
evitare sovrascritture indesiderate
• Tre e due indirizzi possono lavorare solo su registri
• Un indirizzo richiede un registro di appoggio
• Zero indirizzi richiedono un’area di memoria dedicata e
un numero maggiore di istruzioni di macchina, ma una
CPU più semplice
—tre indirizzi: due operandi di input, uno di output
—due indirizzi: due operandi di input, uno dei quali è
considerato anche di output
—un indirizzo: un solo operando di input, quello di
output ed il secondo operando sono impliciti, e di
solito sono contenuti in un registro detto
“accumulatore”
—zero indirizzi: gli operandi si trovano in un’area di
memoria detta “stack” o “pila” da cui vengono
prelevati e immessi
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
9
Esempio di set istruzioni a zero, uno e
due indirizzi
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
10
Realizzazione dell’operazione desiderata
nei tre casi
Z = (A + B) / (C + D) * E
Si voglia implementare nei tre casi l’istruzione di
alto livello:
Z = (A + B) / (C + D) * E
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
11
All’aumentare della complessità del set di istruzioni, diminuisce il
numero di istruzioni necessarie, tuttavia l’interpretazione di
ciascuna delle singole istruzioni diventa più onerosa.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
12
Specifiche di progetto del set di
istruzioni
Tipi di operandi
• Repertorio delle operazioni
• Principali:
— quante e quali operazioni la CPU deve sapere compiere
— complessità delle operazioni
—indirizzi
—numeri
—caratteri
—logici (livello bit)
• Tipi di dati supportati
— indirizzati dagli operandi
• Formato delle istruzioni
— lunghezza (in bit), numero di indirizzi, lunghezza dei singoli
campi, etc…
• Registri
— numero di registri che possono essere indirizzati da
un’istruzione, e loro uso
• Ci sono poi altri tipi di operandi più o meno
complessi detti “strutture dati” come:
—stringhe
—liste
• Metodi di indirizzamento
— modo di interpretare i campi degli indirizzi dell’istruzione
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
13
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
14
Tipi di operandi: i Numeri
Tipi di operandi: caratteri e dati logici
• La rappresentazione numerica in un calcolatore
è fisicamente limitata:
• I caratteri sono rappresentati con una stringa di bit
—in termini di ampiezza dell’intervallo di valori
—in termini di singoli valori
— primo esempio storico: l’alfabeto Morse
— standard attuale: codice ASCII (American Standard Code
for Information Interchange)
– ogni carattere: stringa di 7 bit (128 caratteri possibili)
– un ottavo bit viene aggiunto per un controllo di parità
• Conseguenze:
—arrotondamento, overflow, underflow
• I dati logici sono stringhe di bit in cui ciascun bit
viene considerato come dato
• Tipi di dati numerici:
— utili per test di verità
— memoria usata in modo più efficiente
— alcune operazioni sono rese più semplici
manipolazione del singolo bit (es. virgola mobile)
—interi
—virgola fissa
—virgola mobile
—conversione da decimale a binario
dalla
– alternativa: Extended Binary Coded Decimal (EBCD)
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
15
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
16
Tipi di operazioni
Operazioni di trasferimento dati
• Nonostante il numero di “opcode” vari da
macchina a macchina, possiamo identificare una
categorizzazione molto generale dei tipi di
operazioni:
• Specifiche:
—trasferimento
—aritmetiche
—logiche
—conversioni
—I/O
—controllo di sistema
—trasferimento del controllo
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
— locazioni o registri da/a cui trasferire i dati
— lunghezza dei dati da trasferire
— modo di indirizzamento degli operandi
— Architetture notevoli
– IBM S/370 diverse istruzioni di trasferimento
– VAX un’unica istruzione con varianti nel formato
• Trasferimento da registro a registro
• Trasferimento da/a locazioni di memoria
— calcolare l’indirizzo di memoria
– eventualmente convertirlo da virtuale a fisico
— verificare se il dato si trova in cache
17
Operazioni aritmetiche
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
18
Operazioni logiche
• Basate sull’algebra booleana
• Somma, sottrazione, prodotto, divisione
—virgola fissa e virgola mobile
• Coinvolgono il trasferimento dati
• Operazioni di scorrimento (“shift”)
—logico
– Es. destro
—aritmetico
– Es. destro
—ciclico
– Es. destro
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
19
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
20
Operazioni di trasferimento del controllo
Esempio di istruzioni di salto
condizionato e non condizionato
• Alterano la normale sequenza delle istruzioni
— loop, salti, ecc.
— esecuzione di parti diverse del programma fisicamente lontane
Salta alla locazione 211 se il risultato
di SUB X,Y è uguale a zero
• Istruzioni di salto (“branch instruction”)
— condizionato e non condizionato
— e.g. BR X
– salta alla locazione X
• Istruzioni di “skip”
—Es. ISZ R1
– incrementa il valore di R1
– salta l’istruzione successiva
se R1 vale zero
Calcolatori Elettronici
Es. ciclo “for”
300 LOAD -10, R1
301
…
309 ISZ R1
310 BR 301
…
CPU Prof. Ing. G.L. Marcialis
21
Trasferimento del controllo: istruzioni di
chiamata a procedura
• Una procedura è un programma incorporato in
un programma più grande
• Il controllo passa alla procedura invocata
• Al termine della procedura il controllo ritorna al
programma principale
• Utilità delle procedure (o sottoprogrammi):
—economia: possono implementare funzionalità che
vengono richiamate più volte nel corso del
programma
—modularità: un programma può essere suddiviso in
più sottoprogrammi ciascuno dei quali risolve un
particolare problema
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
23
Salta alla locazione 235 se contenuto
di R1=R2
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
22
Metodi di indirizzamento
• Servono per interpretare il contenuto del campo
indirizzi...
—quindi per calcolare dove effettivamente sono memorizzati
gli operandi dell’istruzione
• Opcode diversi presentano diverse modalità di
indirizzamento
• In qualche caso all’opcode viene aggiunto un bit che,
a parità di operazione, specifica la modalità di
indirizzamento (“mode field”)
• Un altro problema è stabilire se l’indirizzamento si
riferisce a una locazione fisica della memoria
(“effective address”), o a una locazione “virtuale”
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
24
Categorizzazione dei metodi di
indirizzamento
Metodi di indirizzamento senza
riferimenti alla memoria
• Metodi di indirizzamento senza riferimenti alla
memoria
• Indirizzamento immediato
—immediato
—attraverso registro
• Indirizzamento attraverso registro
— l’operando è contenuto in un registro
• Metodi di indirizzamento con riferimenti alla
memoria
—diretto
—indiretto
—attraverso registro in modalità indiretta
—attraverso registro indice (“displacement”)
—stack
Calcolatori Elettronici
— l’operando è contenuto nel campo
indirizzo
CPU Prof. Ing. G.L. Marcialis
• Vantaggi:
— accesso molto rapido
— il campo indirizzi occupa poco spazio
se indirizza un registro
• Svantaggi:
— dimensione dell’operando limitata
— l’indirizzamento a registro presenta
un numero limitato di registri
indirizzabili e richiede
un uso
efficiente degli stessi
25
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
26
Metodi di indirizzamento con riferimenti
alla memoria
Metodi di indirizzamento con riferimento
alla memoria: il “displacement”
• Indirizzamento diretto
• Indirizzamento indiretto
• L’istruzione presenta almeno
indirizzo, uno dei quali esplicito
• Vantaggi
• Vantaggi
— semplicità implementativa
— dimensione dell’operando
campi
— maggior numero di operandi
indirizzabili
• Svantaggi
• Svantaggi
— dimensione limitata
campo indirizzi
Calcolatori Elettronici
due
del
— accesso più lento
CPU Prof. Ing. G.L. Marcialis
27
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
28
Formato delle istruzioni
Elementi chiave nel progetto del formato
delle istruzioni
• Il formato di un’istruzione è dato da:
• Lunghezza dell’istruzione
—codice operativo
—uno o più operandi
—indicazione esplicita o implicita della modalità di
indirizzamento
• Questi elementi sono fondamentali nel progetto
del formato delle istruzioni
• Nelle prossime diapositive vediamo meglio gli
elementi chiave in questa fase del progetto
dell’Unità Centrale
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
29
La lunghezza dell’istruzione: motivi di
compromesso
CPU Prof. Ing. G.L. Marcialis
– numerosità dei codici operativi
– numerosità degli operandi supportati da ogni istruzione
– numerosità dei modi di indirizzamento
—in realtà la lunghezza di un’istruzione è fortemente
limitata da diversi fattori
– capacità e organizzazione della memoria
– struttura del bus
– complessità e velocità del processore stesso
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
30
Allocazione dei bit entro il formato
dell’istruzione
• Non è detto che la lunghezza dell’istruzione sia proporzionale
alla sua effettiva utilità (CISC rispetto a RISC)
—Una istruzione di 32 bit occupa uno spazio doppio di una a
16 bit, ma è improbabile che la sua utilità sia doppia
• La lunghezza di un’istruzione dovrebbe essere pari alla capacità
di trasferimento dalla memoria (bus dati)
• Inoltre è molto probabile che il processore esegua un’istruzione
molto più velocemente di quanto impieghi a prelevarla dalla
memoria, creando così un “collo di bottiglia”
—Un’istruzione di 16 bit può venire prelevata nella metà del
tempo di un’istruzione di 32 bit, ma è improbabile che venga
eseguita nella metà del tempo
• La lunghezza della istruzione è infine vincolata a multipli del
byte (8 bit) e in genere alla lunghezza di una parola di memoria
(“word”)
Calcolatori Elettronici
—è determinata dal numero di bit che essa richiede
—idealmente si vorrebbe un’istruzione più “lunga”
possibile, per garantire il massimo potere espressivo
31
• Un maggior numero di opcode richiede più bit
— Ma ciò significa sottrarre bit al campo indirizzi
— Possibile soluzione: opcode di lunghezza variabile
– più bit per specificare operazioni addizionali all’opcode iniziale
• Il campo indirizzi è invece legato a:
— numero dei modi di indirizzamento (espliciti/impliciti)
— numero degli operandi
– ognuno richiede l’indicazione del proprio modo di indirizzamento
— impiego di registri
– registri “dedicati” possono essere indirizzati implicitamente
— intervallo di indirizzamento
– è sempre conveniente allocare quanti più bit possibile
— granularità degli indirizzi
– indirizzare il byte anziché la parola è utile ma richiede più bit
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
32
Ciclo base per l’esecuzione di una istruzione
Schema Semplificato di un Calcolatore
• Due fasi principali:
—Fetch (“prelievo”)
—Execute (“esecuzione”)
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
33
Fetch Cycle (Ciclo di Prelievo)
34
Prendiamo come riferimento una semplice architettura di
“principio” con le seguenti caratteristiche:
• Il registro Program Counter (PC) contiene l’indirizzo della
prossima istruzione da prelevare
• Il calcolatore preleva l’istruzione dalla locazione di
memoria indirizzata dal Program Counter
• Il Program Counter viene incrementato
—A meno che non sia specificato diversamente
dall’istruzione appena prelevata
• L’istruzione viene caricata nel Instruction Register (IR)
• Il calcolatore interpreta l’istruzione ed esegue le “azioni”
richieste
CPU Prof. Ing. G.L. Marcialis
CPU Prof. Ing. G.L. Marcialis
Esempio di Esecuzione di Istruzioni
Con riferimento alla Figura di pagina 34:
Calcolatori Elettronici
Calcolatori Elettronici
35
•Architettura con un unico registro dati detto accumulatore (AC)
•Istruzioni e dati a 16 bit
•Formato istruzioni: 4 bit di codice operativo, 12 bit di indirizzo.
0001 (1) = Load AC from Memory
0010 (2) = Store AC to Memory
0101 (5) = Add to AC from Memory
•Interi a 16 bit in modulo e segno
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
36
Esecuzione istruzioni (senza “interruzioni”)
Esempio di Esecuzione di Istruzioni
1.
2.
Calcolatori Elettronici
PC contiene l’indirizzo
300. L’istruzione è caricata
in IR
L’Opcode di IR indica che
AC deve essere caricato
con la locazione di
indirizzo 940
3.
Incremento PC e Fetch
4.
Eseguo l’addizione
5.
Incremento PC e Fetch
6.
Il contenuto di AC è
trasferito alla locazione di
memoria 941
CPU Prof. Ing. G.L. Marcialis
• Il funzionamento base della CPU è fatto dei seguenti
passi:
— Fetch delle istruzioni
– La CPU legge un’istruzione dalla memoria.
— Interpretazione delle istruzioni
– L’istruzione viene decodificata per determinare quale azione è stata
richiesta.
— Fetch dei dati
– L’esecuzione dell’istruzione potrebbe richiedere dei dati dalla
memoria o da un dispositivo di I/O.
— Elaborazione dei dati
37
Diagramma degli stati per il ciclo di una istruzione
– Può essere richiesta l’esecuzione di operazioni aritmetiche o logiche
sui dati.
— Scrittura dei dati
– Si può richiedere di trasferire i dati elaborati in memoria o ad un
modulo di I/O.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
38
Ciclo di un’istruzione con interruzione
• E’ costituito dai seguenti sotto-cicli:
• Fetch
— Lettura dell’istruzione successiva dalla memoria.
• Esecuzione
— Interpretazione del codice operativo e conseguente esecuzione.
— Può comprendere
– Trasferimento di dati tra registri.
– Lettura/Scrittura in/da memoria o periferica.
– Utilizzo della ALU.
• Interrupt
— Se è stato abilitato un interrupt, si deve salvare lo stato del
processo per eseguirlo.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
39
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
40
Ciclo indiretto
Ciclo dell’istruzione con sotto-ciclo indiretto
• Se per eseguire l’istruzione è necessario
effettuare un fetch degli operandi con
indirizzamento
indiretto,
questo
ulteriore
accesso alla memoria è visto come un sottociclo dell’istruzione.
• Questo sotto-ciclo “interrompe” la normale
esecuzione delle istruzioni.
• Dopo l’esecuzione di un’istruzione può essere
eseguito un interrupt.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
41
Diagramma di stato con “interrupt”
CPU Prof. Ing. G.L. Marcialis
CPU Prof. Ing. G.L. Marcialis
42
Flusso dei dati: ciclo di fetch
• Una volta effettuata la fase di fetch di un’istruzione, si devono
identificare gli indirizzi degli operandi.
• Il fetch degli operandi può richiedere l’indirizzamento indiretto.
• Dopo l’esecuzione dell’istruzione può essere necessario effettuare un
ulteriore indirizzamento indiretto per trasferire i risultati in memoria.
Calcolatori Elettronici
Calcolatori Elettronici
43
• Il contenuto del PC è trasferito al MAR.
• Si effettua la lettura della locazione di memoria puntata,
ponendo il risultato nel MBR e poi in IR.
• Il PC viene incrementato di 1 per il fetch dell’istruzione
successiva.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
44
Flusso dei dati: ciclo indiretto
Flusso dei dati: ciclo di interrupt
• L’unità di controllo verifica dall’IR se gli operandi usano
l’indirizzamento indiretto.
• Se sì, il riferimento dell’indirizzo viene trasferito dal MBR
al MAR.
• Si effettua la lettura dell’indirizzo richiesto dalla memoria.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
45
La pipeline
• Si eseguono “contemporaneamente” le seguenti
sei fasi per sfruttare il più possibile la CPU:
—Fetch dell’istruzione
– Trasferimento in un buffer (MBR) dell’istruzione successiva.
—Decodifica dell’istruzione
– Si determina il codice operativo e gli specificatori degli operandi.
—Calcolo degli operandi
– Calcolo dell’indirizzo effettivo degli operandi.
—Fetch degli operandi
– Lettura degli operandi dalla memoria.
—Esecuzione dell’istruzione
—Scrittura del resultato
• Il contenuto del PC viene posto nel MBR per essere
salvato in memoria.
• L’unità di controllo pone nel MAR un indirizzo di locazioni
di memoria riservate per questo scopo (es.: lo stack).
• Nel PC viene caricato l’indirizzo della routine dell’interrupt
richiesta.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
46
Temporizzazione della pipeline
• Con la pipeline si riduce il tempo di esecuzione di 9
istruzioni da 54 unità di tempo a 14.
• Si assume che:
— Le sei fasi abbiano
la stessa durata.
— Non
ci
siano
conflitti
nell’accesso
alla
memoria tra le
varie fasi.
— Vengano sempre
eseguite tutte e
sei le fasi.
– Salvataggio del risultato in memoria.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
47
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
48
Temporizzazione di un salto condizionato
in una pipeline
• L’istruzione 3 è un salto condizionato all’istruzione 15.
• Non si può predire il salto prima della sua esecuzione (unità di tempo 7).
— Si continua ad eseguire le istruzioni immediatamente successive.
Fattore di “speedup”
• E’ il rapporto tra il tempo di esecuzione di un’istruzione senza e con
pipeline:
Fatt_speedup = T1/Tk
— k è il numero di stadi (fasi) della pipeline.
• All’istante n. 8 si inizia
a caricare l’istruzione
15.
• Più aumenta il numero di stadi, maggiore è il fattore di “speedup”, ma
aumentano costi e ritardi tra stadi.
— Le
fasi
delle
istruzioni successive
alla 3 già eseguite
vanno perse.
Calcolatori Elettronici
• Valori tipici: da 6 a 9 stadi.
CPU Prof. Ing. G.L. Marcialis
49
Pipeline nel PC Intel 80486 (1)
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
50
Pipeline nel PC Intel 80486 (2)
• E’ usata una pipeline a 5 livelli:
—4. Esecuzione
— 1. Fetch
– Dalla cache o dalla memoria esterna.
– Si usano uno o due buffer da 16 byte.
– Lo scopo è riempire i buffer con nuovi dati man mano che i vecchi sono
usati.
– Media di 5 fetch di istruzione per caricamento.
– Fase indipendente dagli altri stadi per tenere pieno il buffer.
– Operazioni con la ALU.
– Accesso alla cache.
– Aggiornamento dei registri.
—5. Scrittura
– Aggiornamento dei registri e dei “flag”.
– I risultati vengono mandati alla cache e allo stesso tempo
l’interfaccia del bus scrive nei buffer.
— 2. Stadio di decodifica 1
– Informazioni sul codice operativo ed il metodo di indirizzamento.
– Le informazioni richieste sono incluse in al più 3 byte di istruzione.
— 3. Stadio di decodifica 2
– Si espande il codice operativo in segnali di controllo.
– Calcolo dell’indirizzo in caso di modi complessi.
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
51
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
52
Esempio di istruzioni in pipeline del 80486
Per saperne di più
•Capp. 10, 11, 12 del libro di testo
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
53
Calcolatori Elettronici
CPU Prof. Ing. G.L. Marcialis
54