Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
La macchina programmata
Instruction Set Architecture (1)
Computer Periferiche
• Memorie di
Processor Memory
massa
Control (“Storage”)
Input
• Tastiera
• Mouse
• Touch screen
• Monitor
Datapath • Interfacce di
ALU Output rete
• Sensori
• Attuatori
• ....
Istruzione da eseguire
(codificata come insieme di bit)
(esempio):
R1 + R2 -> R3 Processor (CPU, Central Processing Unit)
Current instruction
Registers
R0
Decodifica istruzione Control Unit R1
R2
R3
Segnali di controllo
ai circuiti
Arithmetic
Logic
Unit
Elaborazione
dei dati Rn
Flussi
dei dati
Indirizzo in memoria
della prossima istruzione
da eseguire
Memory Address
Processor
Memory
Program Counter
Incremento PC 00100111101111011111111111100000
10101111101111110000000000010100
per puntare alla 10101111101001000000000000100000
Le istruzioni stanno in memoria
istruzione successiva 10101111101001010000000000100100
Current instruction
10101111101000000000000000011000 “una dopo l’altra”
10101111101000000000000000011100
10001111101011100000000000011100 (di solito…)
10001111101110000000000000011000
00000001110011100000000000011001
00100101110010000000000000000001
Registers 00101001000000010000000001100101
10101111101010000000000000011100
Control 00000000000000000111100000010010
00000011000011111100100000100001
00010100001000001111111111110111
Esecuzione istruzione 10101111101110010000000000011000
00111100000001000001000000000000
(vedi slide precedente) 10001111101001010000000000011000
00001100000100000000000011101100
00100100100001000000010000110000
10001111101111110000000000010100
00100111101111010000000000100000
00000011111000000000000000001000
00000000000000000001000000100001
ALU
Memory Content
• Registri di CPU:
• dentro il processore
• pochi (p. es. 32)
• veloci (coincide con il clock)
• costosi
• NB: questi sono quelli che si chiamano di solito “Registri”
• Memoria
• grande (p. es. 1GB = 1000000000 byte
• (relativamente) lenta (alcuni cicli di clock)
• mediamente costosa
• NB: anche la memoria è un insieme di registri, chiamati di solito “celle” o
“locazioni”
• Memoria di massa (“Storage”)
• E’ una periferica
• molto grande (da 100 GigaB a TeraByte)
• lenta (Millisecondi)
• poco costosa
• persistente
“somma i contenuti del registro 8 e del registro 9 e metti il risultato nel registro 10”
rs rt rd funct
op primo secondo shamt
(operation code) registro registro registro variante della
tipo operazione sorgente sorgente destinazione shift operazione
0000 0001 0000 1001 0101 0000 0010 0000 gli stessi spacchettati in quartetti
(il computer “non lo sa”)
0x 1 0 9 5 0 2 0 rappresentazione esadecimale
utile (ahimè) per gli umani