Fondamenti di Informatica
Prof. Giuseppe Fenza
Riepilogo Lezione Precedente
Riepilogo Lezione Precedente
•
Conversioni di base
•
Rappresentazione in Modulo e Segno
•
Complemento a 2 (CA2)
Oggi
•
Complemento a 2 (CA2) e Somma Binaria
•
Tipi di Computer
•
Architettura di Von Neumann
Sommiamo un numero e il suo negato
otteniamo -1
CA2001 +
(+1)
110 =
(NOT di +1)
111
(-1
CA2)
0101 +
(+5)
1010 =
(NOT di +5)
1111
(-1
CA2)
1. Per rappresentare l'opposto di un numero binario in
complemento se ne invertono, o negano, i singoli bit: si applica cioè l'operazione logica NOT.
2. Si aggiunge infine 1 al valore del numero trovato con questa operazione.
Rappresentazione degli Interi
Complemento a 2
Esempio (-5)
Rappresento 5
Eseguo il NOT logico bit a bit
Sommo 1 al numero ottenuto
Rappresentazione degli Interi
Complemento a 2
Riassumendo Complemento a 2
• Se X < 0 allora ho due metodi per procedere:
– Secondo Metodo
1. Condizione imprescindibile: X è incluso tra i valori ammissibili per k bit in CA2, ossia [-2k-1; +2k-1-1]. Altrimenti, il valore X non è rappresentabile in k
bit con il Complemento a 2
2. Ottengo la rappresentazione binaria del valore assoluto di |X|
3. Eseguo il not bit-a-bit del numero binario ottenuto rappresentato su k bit
4. Sommo 1 al numero binario ottenuto ed ottengo la rappresentazione del numero negativo (che altri non è che Y = 2k - |X|)
Esempio SECONDO METODO
• Complemento a 2: dati 5 bit, rappresentare -3 in binario
1. Condizione imprescindibile: -3 è nell’intervallo di valori ammissibili per 5 bit, ossia [-24; +24-1] è [-16;+15]
2. Ottengo la rappresentazione binaria del valore assoluto di
3. Eseguo il not bit-a bit del 3 rappresentato su 5 bit
000112 è 111002
4. Aggiungo 1 al numero 11100 ed ottengo
111012
• Verifichiamo che serve solo la somma in
complemento a 2 anche per fare la sottrazione:
Rappresentazione degli Interi
Complemento a 2
Verifica
• Verificare per k=5 che in complemento a
due siamo in grado di rappresentare i
valori da -16 fino a +15
• Come fare?
– Convertite in complemento a due su 5 bit 15 e
16
– Convertite in complemento a due su 5 bit -16
e verificate che è ottenibile come forse non ci
saremmo aspettati!
COMPLEMENTO A 2
NOTA
• Complemento a 2: dati 5 bit, rappresentare -20 in binario
1. Condizione imprescindibile: -20 è nell’intervallo di valori ammissibili per 5 bit, ossia [-24; +24-1] è [-16;+15]
2. -20 non è rappresentabile in 5 bit con il complemento a 2 perché non rientra nel range di valori ammissibili
• Complemento a 2: dati 5 bit, rappresentare +20 in binario
1. Condizione imprescindibile: -20 è nell’intervallo di valori ammissibili per 5 bit, ossia [-24; +24-1] è [-16;+15]
2. +20 non è rappresentabile in 5 bit con il complemento a 2 perché non rientra nel range di valori ammissibili
ESERCIZI- TO DO
• Siano dati i seguenti numeri in base dieci: +7,
−7, +23, −23, +48, −48.
• Nota: Si indichi il loro valore binario nelle
rappresentazioni modulo e segno e
ESERCIZI- TO DO
• In binario puro, e sul numero minimo di bit, si ha che:
– +7 = 111 – +23 = 10111 – +48 = 110000
Base 10 Modulo e segno Complemento a due +7 -7 000111 100111 000111 111001 +23 -23 010111 110111 010111 101001 +48 -48
Non si può fare abbiamo bisogno di 7 bit
ESERCIZI- TO DO
• Scrivere in binario semplice su 7 bit il
numero 11
10• Scrivere in modulo e segno su 8 bit il
numero 25
10• Scrivere in modulo e segno su 7 bit il
numero -12
10• Scrivere in modulo e segno su 5 bit il
numero 20
10Tipi di Computer
• Velocità
• Caratteristiche Tecnologiche
• Applicazioni
• Costo
08/10/19 15Tipi di Computer
• Supercomputer
• Mainframe
• Minicomputer
• Personal Computer
• Workstation
• Server / Terminali
• Console
• Altre tipologie di computer
Aumenta il costo e la velocità e anche la dimensione
08/10/19 17
Fondamenti di
Informatica
Prof. Fenza Giuseppe
Tipi di Computer [Sez: 2.1, 2.2]
Classificazione degli elaboratori
•
I computer si differenziano per le loro
prestazioni:
–
Velocità
–
Capacità e caratteristiche tecnologiche
–
Applicazioni tipiche
Supercomputer
Velocità di elaborazione
l si misura in Teraflops (1 teraflop=1.000 Miliardi di
operazioni in virgola mobile al secondo)
l (giugno 2015) il più veloce è il cinese TIANHE-2 della NUDT: 34.000 TFlop/s
34.000.000.000.000.000 di operazioni al secondo l Quanto è grande questo numero?
– Se fossero monetine da 1 euro e le mettessimo
• Una accanto all'altra potremmo fare il giro della terra 17.000.000
volte
Supercomputer
Contenuto tecnologico
l TIANHE-2 presenta
– 3.120.000 cores
– (RAM) 1.024.000 GB
– Consuma oltre 17.800 kW – occupa 720 mq l Utilizzano programmi ad hoc spesso complessi
Supercomputer
Applicazioni tipiche
l Special purpose, dedicati ad attività specifiche,
tipicamente usati in campo scientifico, militare o
tecnico, dove il fattore tempo è essenziale: – elaborazione di dati atmosferici
– simulazione di voli spaziali, – progettazione automobili, aerei – simulazioni militari ….
Costi elevatissimi
Supercomputer (primi 10 al mondo)
• 10 supercomputer più potenti al mondo sono:
– 5 negli USA, – 1 in Giappone, – 1 in Cina, – 1 in Germania, – 1 in Svizzera – 1 in Arabia Saudita
• 4 sono della IBM, 3 della Cray, 1 della Fujitsu, 1 della
Dell, 1 della NUDT
– Statistiche aggiornate al giugno 2015 e reperibili
al sito:
http://www.top500.org/
)
Mainframe
Velocità
l
si misura in
MIPS (1 MIPS: 1 Milione di
istruzioni al secondo)
(unità non
universalmente accettata)
l
Il più veloce sistema mainframe è lo z13 IBM e
Mainframe
Contenuto tecnologico
l avanzato, ma inferiore a quello dei supercomputer
– in grado di funzionare per anni senza interruzione.
l grandi dimensioni (soprattutto memoria di massa) l programmi appositamente sviluppati
– scritti principalmente in COBOL (per l’85%), Assembly (il 7%),
PL/I (il 5%), C, C++ e Java (il rimanente 3%) l migliaia di utenti contemporaneamente
– Gestione: personale specializzato
– Front-end (es: cassiere banca, sportellista stazione, ecc…)
Mainframe
Applicazioni tipiche
l
general purpose
l
Usato da
grossi enti
o da
grandi aziende
che
devono elaborare enormi quantità di dati con
alte prestazioni e grande affidabilità (Es.: FS,
banche ecc., ma anche Server Farm)
Costi
l
Molto elevati
($100.000 per lo z13) anche perché
richiede la
presenza di molte unità “periferiche”
(principalmente memorie di massa)
Minicomputer (o computer
dipartimentale)
Velocità
l Intermedia tra i Mainframe e i computer personali
Caratteristiche tecnologiche:
l medie-piccole dimensioni, poco più di un PC
l Utilizzabile contemporaneamente da centinaia di utenti mediante terminali
– Gestione: personale specializzato (poche unità)
– Front-end (es: cassiere banca, sportellista stazione, ecc…)
personale non specializzato
l Utilizza sia programmi appositamente costruiti che programmi disponibili sul mercato.
Minicomputer (o computer
dipartimentale)
Applicazioni tipiche
l general purpose
l usato da piccole e medie aziende e da enti medio-piccoli (università, sedi periferiche di un enti, ecc…).
l Tipicamente utilizzato per la gestione di
archivi e per contabilità e amministrazione.
Costi
l Ha costi contenuti di acquisto (qualche
decina di migliaia di euro)
l Attenzione: sul libro di testo vengono erroneamente
Terminali
l Unità specializzate per il collegamento a distanza, o in
locale, tra operatori e computer centrale. l Terminale intelligente:
– Dotato di capacità di calcolo e/o di memoria in locale.
– Svolge elaborazioni alleggerendo così il computer centrale
l Terminale stupido
– Non presenta capacità di calcolo
– È dotato solo di tastiera, mouse e monitor
l Terminale self-service
– Usati direttamente dagli utenti finali (quindi non esperti) – Bancomat - Segreterie studenti universitarie
Server
• Computer che fornisce “servizi” ai suoi utenti
– forniscono dati– eseguono programmi
• I server possono essere di qualsiasi potenza
– Il marketing associa (erroneamente) il concetto di server al concetto di macchina potente
• Il concetto di
Computer Server (“servente”) è
associato più alle funzioni che alle prestazioni
– anche un normale PC non molto potente può fungere da server, per esempio in una rete locale
Personal: Workstation
• Stazione di lavoro individuale dall’elevata capacità
di calcolo
• Presenta hardware potente e specializzato
• Utilizzati nella
– progettazione CAD (Computer Aided Design) – grafica computerizzata (video)
– simulazione di processi complessi – Ricerca scientifica
Personal: Desktop
• PC= Personal Computer (detto anche Desktop)
• Il
personal computer
è:
– Il computer nella sua forma più comune.
• A fine anni 70 quasi tutta la potenza generata dai
computer su scala mondiale proveniva dai mainframes.
• A fine anni ‘80 il 99% della potenza generata dai
computer su scala mondiale proveniva dai PC, mentre i
“grandi calcolatori” ne generavano solo l’1%
Mobile: Laptop o Notebook
l
Il
computer portatile
(detto anche
Notebook
)
è:
– potente come quelli da scrivania tradizionali – di dimensioni ridotte
– alimentazione elettrica e batteria autonoma
– Ha tastiera e mouse meno facili da utilizzare – Non ha grandi possibilità di collegamento di
periferiche di I/O
– Collegabile a una tastiera e ad un
Mobile: Tablet
• Computer portatile alle dimensioni di una tavoletta che
permette all'utente di interfacciarsi con il sistema
direttamente sullo schermo mediante penna o dita.
• Un tablet PC è un laptop computer, dotato di
– touchscreen ruotabile
– sistema operativo standard (Windows o Linux.)
Mobile: Ebook reader
l Un lettore E-book ha forma simile a un tablet, con alcune
peculiarità che lo rende adatto alla lettura
– schermo più veloce con refresh più elevato – Batteria di lunghissima durata (anche mesi)
– migliore leggibilità dello schermo soprattutto alla luce del sole – Tecnologia di carta elettronica (e-paper) che
non affatica la vista e rende il tablet molto simile a un libro
Iphone e Smartphone
l Uno Iphone (Apple) o uno smartphone (altre case) è
un telefono cellulare con capacità di calcolo, memoria e di connessione dati, basato su un sistema operativo per dispositivi mobili.
l in grado di riprodurre musica, scattare foto,
girare video, eseguire programmi (App)
l principali sistemi operativi mobili (OS):
– Android – iOS
– Windows Phone
– Blackberry 10,
Sistemi Operativi per Mobile
(Europa-USA-Italia)
• Fonte: Kantar (30/6/2014)
•
I tipi di computer: la Smart Card
• Smart Card
– Usate nei cellulari o come carte in grado di ricevere e decodificare i segnali TV provenienti dal satellite
• Presentano
– un Microprocessore (programmabile)
– Una memoria EPROM (Erasable Programmable Read Only Memory), RAM che non ha bisogno di alimentazione
Fondamenti di Informatica
Prof. Giuseppe Fenza
Architettura dei computer [Sez: 14.1, 14.2]
L’architettura Di Von Neumann:
Cenni Storici
• I calcolatori attuali sono macchine o automi di calcolo generale
– Turing e von Neumann sono i padri della moderna informatica
• Alan Mathison Turing (1912-1954) – Matematico e logico
– A 25 anni elaborò la teoria della “macchina di Turing”
• John Von Neumann (1903-1957) – Matematico e informatico
La macchina di Turing
• Macchina teorica in grado di eseguire procedure logiche e matematiche (1937)
• Procedure ó algoritmo
Componenti:
• un nastro diviso in celle (memoria esterna);
• una unità di lettura e scrittura;
• un insieme finito di simboli;
• una memoria interna.
Architettura di von Neumann
• La quasi totalità degli elaboratori moderni è
basata
– sulle funzionalità – e sui principi teorici
• enunciati a metà degli anni ’40 dal matematico
John Von Neumann
• e noti come architettura di Von Neumann (o
macchina di Von Neumann o macchina a registri
a programma memorizzato)
La macchina a registri a programma
memorizzato
•
Ispirata dalla macchina (concettuale) di Turing.
•
La macchina di Von Neumann è un modello
semplificato dei calcolatori moderni
•
Von Neumann progettò, verso il 1945, il primo
calcolatore con programmi memorizzabili
anzichè codificati mediante cavi e interruttori
•
Anche la macchina di von Neumann è una
La macchina a registri a programma
memorizzato
– unità centrale di elaborazione (CPU – Central Processing Unit)
• esegue istruzioni per l’elaborazione dei dati
• svolge anche funzioni di controllo memoria centrale
– Memoria
• memorizza e fornisce l’accesso a dati e programmi in esecuzione
– interfacce di ingresso e uscita
• componenti di collegamento con le periferiche del calcolatore
– bus
• svolge funzioni di trasferimento di dati e di informazioni di controllo tra le varie componenti funzionali
La macchina di Von Neumann è composta da 4 tipi di componenti funzionali:
La macchina a registri a programma
memorizzato
– C.P.U (Central Processing Unit)
• UNITA’ CENTRALE DI ELABORAZIONE
• in senso stretto: il “motore” che preleva dalla memoria, interpreta (decodifica) ed esegue le istruzioni del programma e governa il funzionamento delle diverse parti che compongono il computer • Coordina le operazioni degli altri componenti del sistema
l
L’architettura di von Neumann
si basa sulle
seguenti componenti fondamentali :
– la CPU (Central Processing Unit o unità centrale di elaborazione) che è composta da
• Unità di calcolo o ALU (Arithmetic-Logic Unit) • Unità di controllo o CU (Control Unit)
– la memoria centrale (che von Neumann ipotizzava divisa in celle dotate di indirizzi)
– i bus (le “linee” che connettono le varie componenti)
– Unità di Input e Unità di Output (che immaginava come due nastri divisi in celle)
l
CPU
(
Central Processing Unit
, unità centrale di
elaborazione, detto anche
Processore
o
Microprocessore
), ha un duplice compito:
– Gestisce il funzionamento dell’intero computer
(gestisce il flusso di dati le varie ocmponenti)
– Esegue le istruzioni di cui è composto ogni
programma e che risiedono nella memoria.
l
Memoria Centrale
è la scrivania di lavoro del
computer e contiene, contemporaneamente,
• i dati• i programmi
– su cui il computer sta operando.
La macchina a registri a programma
memorizzato
• Memoria Centrale (RAM Random Access Memory)
– L’unita’ che funge da “DEPOSITO” dei DATI e delle
ISTRUZIONI necessari per la esecuzione di un programma. La CPU vi ha accesso diretto.
– E’ UN PASSAGGIO “OBBLIGATO” prima di poter essere
elaborata l’informazione deve essere acquisita dalla memoria centrale (per motivi tecnologici)
– Memoria di lettura/scrittura
– Caratteristiche: veloce (ns), costosa, volatile, non estremamente capace, non trasportabile
MEMORIA DI MASSA (o secondaria)
l
Archivia i Dati e i Programmi che il computer
può mandare in esecuzione
(molti più di quelli
che, in ogni dato istante, sono effettivamente in
esecuzione)
.
l
Le principali Memorie di massa sono:
– Hard Disk (disco fisso o rigido)– Pen Drive e memorie SSD – CD-ROM
– DVD
– Blu-Ray
La macchina a registri a programma
memorizzato
• UNITA’ di INPUT - OUTPUT (periferiche): tastiera, video, stampanti, scanner, modem, microfoni, casse audio,
ecc...)
– DISPOSITIVI CHE CONSENTONO L’IMMISSIONE dei DATI e dei PROGRAMMI E L’USCITA DEI RISULTATI
Il Personal Computer
• IL CASE
– CPU (Central Processing Unit)
» Unità Centrale di Elaborazione
– RAM (Random Access Memory)
» Memoria Centrale
– ROM (Read Only Memory)
» Memoria Centrale
– HD (Hard Didk)
Il processore
• C.P.U. o unità centrale di elaborazione o
Processore, è un circuito integrato (Chip), che
effettua l’elaborazione vera e propria dei dati,
delle operazioni di calcolo e di controllo.
• Sulla superficie della CPU sono presenti:
– Miliardi di piccoli interruttori elettronici
miniaturizzati, di tipo acceso/spento, i transistor, – Altre componenti elettriche.
Il processore
• Una CPU è composta da due parti principali: – ALU (Unità Aritmetico/Logica)
• Esegue le strutture in linguaggio macchina presenti in un programma
• Accede unicamente ai dati presenti nei registri (piccole memorie molto veloci direttamente a
contatto con la CPU) che contengono i dati su cui opera ogni singola istruzione
– Unità di Controllo
• Sovrintende alla corretta esecuzione dei programmi
• Coordina il lavoro delle altre componenti hardware e le attività dell’intero computer
Il processore - Clock
• La potenza di elaborazione di un processore è data dal numero di operazioni che l’ ALU esegue in un secondo (MIPS – milioni d
istruzioni al secondo, MFLOPS – milioni di istruzioni in virgola mobile al secondo)
§ Ogni computer un orologio interno, il clock, che cronometra e sincronizza tutte le operazioni svolte dalla CPU (un po’ come il cuore nel nostro organismo)
§ La velocità di un computer è misurata in hertz
§ L’hertz indica il numero di cicli che il clock effettua in un secondo q 1 hertz (Hz) = 1 ciclo al secondo
q 1 megahertz (MHz) = 1 milione di cicli al secondo
Il processore
• Un computer con velocità di 800 MHz sarà molto più rapido di uno con la stessa architettura a 500 MHz • La velocità di un computer dipende anche da altre
caratteristiche, quali la velocità di accesso e la quantità di memorie ecc.
• Prima di comprare un computer è necessario valutare la potenza del processore in funzione del sistema
operativo, dei programmi applicativi che vi devono girare e delle altre componenti del computer
• La potenza e la velocità di calcolo non vanno mai valutate in assoluto, ma in funzione delle proprie esigenze di utilizzo
Compatibilità
• Cosa accade ai programmi quando si cambia
CPU?
• La compatibilità è garantita, di norma, verso il
basso.
– Un programma che gira su una CPU funziona
anche sui modelli più recenti
– Il viceversa non è sempre vero
• Non è garantita la compatibilità tra processori di
aziende diverse, a meno che essa non sia
Coprocessori
• La CPU principale “delega” ai processori specializzati (Coprocessori) il trattamento di particolari tipologie di dati (es. filmati o suoni).
– Un coprocessore è un processore “dedicato” che, sotto il controllo della CPU e del Sistema Operativo svolge elaborazioni specialistiche che richiederebbero alla CPU un notevole dispendio di tempo
• Processore scheda video • Processore scheda audio
Processori Paralleli
• Più processori che collaborano, paritariamente, all’esecuzione di un programma.
– I processori possono cooperare
• Come in una catena di montaggio
• Processando contemporaneamente parti
diverse di una stesso dato (nelle previsioni del
tempo, ad esempio, ogni processore elabora una specifica zona geografica)
Perché parallel computing?
• Settori di Impiego
– Physics - applied, nuclear, particle, condensed matter, high pressure, fusion, photonics
– Bioscience, Biotechnology, Genetics
– Chemistry, Molecular Sciences, Geology, Seismology – Mechanical Engineering - from prosthetics to spacecraft – Electrical Engineering, Circuit Design, Microelectronics – Computer Science, Mathematics
– Defense, Weapons
• Applicazioni Industriali
– "Big Data", databases, data mining – Oil exploration
– Web search engines, web based business services – Medical imaging and diagnosis
Graphics Processing Unit - GPU
• Nasce per la grafica!
• Molto più potente per “applicazioni
grafiche” rispetto alla CPU
• Tecnologia in continua evoluzione
• Utile solo per problemi altamente
parallelizzabili (velocità 10x, 100x ...)
• Grandi porzioni di calcoli sono lo “stesso
calcolo”!!
GPU ieri
• In 2007, NVIDIA ha visto la possibilità di introdurre le GPU in questo mainstream della programmazione general purpose, definendo una easy-to-use programming interface
• La divergenza in termini di potenza computazionale tra CPU e GPU si è iniziata a vedere quando, nel 2009, le GPU hanno infranto la barriera dei 1000 GFLOPS o 1 TFLOPS
• CUDA (Compute Unified Device Architecture)
– General-purpose parallel compuTng plaUorm for NVIDIA GPUs
• OpenCL (Open CompuTng Language)
GPU oggi
• General-Purpose compuTng on GPUs
(GP-GPU)
• Parallel compuTng
• Heterogeneous architectures
• Heterogeneous applicaTons
• Big data
Microprocessori incorporati
• I microprocessori si trovano anche in
– Automobili
– Telefoni
– Termostati
– Schede telefoniche
– Carte di Credito
La CPU: Miglioramenti
Capacità di una CPU - Dimensione della parola
• Maggiore è la quantità di dati che un computer
elabora simultaneamente e maggiori sono la sua
velocità e la sua potenza.
• La dimensione della parola indica il numero
di bit che un processore tratta
simultaneamente.
• Corrisponde a
– Quanti bit possono essere trasferiti simultaneamente tra processore e memoria
– Dimensione della cella di memoria RAM – Dimensione dei registri della CPU
La CPU: Miglioramenti
Capacità di una CPU - Dimensione della parola
• Nei primi computer la dimensione della parola era di 8 bit, cioè 1 byte. Da allora si è cominciato a misurare la dimensione della memoria in byte.
• Attualmente la dimensione di parola di PC varia da 32 a 64 bits.
La CPU: Miglioramenti
Migliorare l’efficienza – Le istruzioni del
Processore
• Quando un computer esegue un programma
– La CPU esegue sequenze di istruzioni (istruzioni macchina)
– Istruzioni scritte in un linguaggio di programmazione speciale, chiamato linguaggio macchina
La CPU: Miglioramenti
Migliorare l’efficienza – Le istruzioni del
Processore
• Ogni CPU è in grado di eseguire solo poche
istruzioni semplici quali:
– Somma di due numeri (somma di tre numeri
viene effettuata tramite due somme elementari)
– Confronto tra due numeri per verificarne la
differenza (non tutti i processori sanno
distinguere in modo immediato, invece, se uno
precede l’altro)
– Spostamento dei bit in una parola di qualche
posizione a destra o a sinistra
La CPU: Miglioramenti
Migliorare l’efficienza – Le istruzioni del
Processore
• L’insieme delle istruzioni di un processore sono
il suo VOCABOLARIO che è molto povero
• Un vocabolario povero è anche composto
generalmente, da parole molto corte
• D’altro canto, quando più un vocabolario è
povero, tante più parole deve contenere una
La CPU: Miglioramenti
Migliorare l’efficienza – Le istruzioni del
Processore
• Ogni istruzione di un processore è composta da
più parti elementari che devono essere eseguite
tutte per completare l’istruzione
– Ogni parte elementare di un’istruzione viene
eseguita in corrispondenza di un impulso di clock – Quindi ogni istruzione ha bisogno di più impulsi
La CPU: Miglioramenti
Migliorare l’efficienza – Le istruzioni del
Processore
• Ad esempio, per effettuare la somma di due
numeri
– Bisogna leggere il primo addendo
– Bisogna leggere il secondo addendo
– Bisogna eseguire la somma
– Bisogna memorizzare il risultato
• E potrebbe darsi che alcune di queste operazioni
richieda più cicli di clock per essere completata
La CPU: Miglioramenti
Migliorare la velocità
• Una CPU con un clock alto è sicuramente veloce
• Attenzione:
– La velocità dipende anche, anzi soprattutto, dalla
velocità delle singole istruzioni che
compongono il suo insieme di istruzioni…
– ... che dipende dal numero di passi elementari
che le singole istruzioni devono effettuare per
Unità Centrale di Elaborazione (Central Processing Unit, CPU) e collegamento con le altre unità funzionali.
La CPU è fisicamente realizzata sotto forma di microprocessore. clock
• PC (Program Counter): registro contatore delle istruzioni, conTene l’indirizzo della prossima istruzione da eseguire
• IR (Instruc2on Register): registro delle istruzioni, conTene l’istruzione che deve essere eseguita (codificata)
• MAR (Memory Address Register): registro di indirizzamento della memoria, conTene l’indirizzo della cella di memoria che deve essere acceduta o memorizzata
• MDR (Memory Data Register): registro daT di memoria, dato che è stato prelevato dalla memoria o che deve essere memorizzato
• PSW (Processor Status Word): parola di stato del processore; conTene informazioni, opportunamente codificate, circa l’esito dell’ulTma istruzione che è stata eseguita
75
Programma
Indirizzo
Istruzione
1>
istruzione 1
2>
istruzione 2
3>
istruzione 3
4>
istruzione 4
…
76
UNITA’ DI CONTROLLO
L'unità di controllo fa funzionare l’elaboratore, da quando viene acceso a quando viene spento.
Essa esegue in continuazione il cosiddetto ciclo di accesso / decodifica /
IL CICLO fetch/ decode / execute
77
1) FASE DI FETCH: si accede alla prossima istruzione (puntata da PC) e la si porta dalla memoria centrale al Registro Istruzioni (IR)
2) FASE DI DECODE: si decodifica il tipo dell’istruzione in base al suo OpCode, si individuano i dati usati dall’istruzione, e li si trasferisce nei registri opportuni
3) FASE DI EXECUTE: si esegue l’istruzione
L’esecuzione di un programma avviene eseguendo ordinatamente le istruzioni del programma, svolgendo ripetutamente il ciclo fetch-decode-execute