CALCOLATORI
ELETTRONICI
CALCOLATORI ELETTRONICI
CALCOLATORI ELETTRONICI
- INTRODUZIONE
- IL CALCOLATORE È UNA MACCHINA PER L'ESECUZIONE AUTOMATICA DI ALGORITMI
- UN PROGRAMMA È UN ALGORITMO ESPRESSO IN UN LINGUAGGIO DI PROGRAMMAZIONE
- IL LINGUAGGIO DIRETTAMENTE ESEGUIBILE DAL CALCOLATORE È IL LINGUAGGIO BINARIO
COMPONENTI PRINCIPALI DI UN CALCOLATORE
-
PROCESSORE - CENTRAL PROCESSING UNIT (CPU)
- PROVVEDE ALL'ESECUZIONE DELLE ISTRUZIONI MACCHINA
- CICLO DI ESECUZIONE
- PRELEVA ISTRUZIONE DALLA MEMORIA
- DECODIFICA L'ISTRUZIONE
- ESEGUE ISTRUZIONE
- IL PROCESSORE È COMPOSTO DA DUE SOTTOSISTEMI
- 1-UNITÀ DI CONTROLLO - CONTROLLA IL SEQUENZIAMENTO E L'ESECUZIONE DELLE
- ISTRUZIONI GENERANDO SEGNALI DI CONTROLLO
- 2-UNITÀ DI ELABORAZIONE: ESEGUE LE ISTRUZIONI (DATAPATH)
- BANCO DEI REGISTRI
- MEMORIA INTERNA CPU
- PROGRAM COUNTER (PC)
- INSTRUCTION REGISTER (CIR)
- ALU -> ESEGUE OPERAZIONI SUI DATI
- BANCO DEI REGISTRI
- 1-UNITÀ DI CONTROLLO - CONTROLLA IL SEQUENZIAMENTO E L'ESECUZIONE DELLE
-
LA MEMORIA
- 1-MEMORIA CENTRALE: CONTIENE ISTRUZIONI/DATI DEI PROGRAMMI IN ESECUZIONE
- VOLATILE
- RAM - RANDOM ACCESS MEMORY
- VELOCE (~10 - 100 ns)
- 2-MEMORIA SECONDARIA: DISCHI CD ...
- MEMORIA DI LUNGO PERIODO (NON VOLATILE)
- TEMPO DI ACCESSO MAGGIORE (~ms)
- 1-MEMORIA CENTRALE: CONTIENE ISTRUZIONI/DATI DEI PROGRAMMI IN ESECUZIONE
-
DISPOSITIVI DI INPUT E OUTPUT
- TASTIERA
- MOUSE
- MONITOR
- STAMPANTE
La Memoria Centrale
- È composta di celle, a loro volta composte da un certo numero di bit
- Tipicamente 1 cella = 1 Byte = 8 bit
- Una cella di memoria può memorizzare solo i valori 0 e 1
- Ogni cella è associata a un indirizzo nell'intervallo [0,1,...,M-1]
- La CPU accede alle informazioni in scrittura/lettura tramite l'indirizzo della cella
- Per ragioni di efficienza le operazioni di lettura/scrittura vengono effettuate per gruppi di byte detti word
- 1 parola = 1, 2, 4, 8 byte
Disco Rigido
- Costituito da un insieme di piatti rotanti (da 1 a 15)
- I piatti sono rivestiti di una superficie magnetica
- Esiste una testina per ogni faccia (2 testine per ogni piatto)
- Velocità di rotazione costante
- Ogni piatto è suddiviso in tracce (1000-5000 tracce)
- Ogni traccia è divisa in settori
- Il settore è la più piccola unità che può essere trasferita
ESECUZIONE DI UN PROGRAMMA
- Input del codice
- Codice viene salvato in memoria
- Il processore preleva un istruzione
- L'unità di controllo del processore decodifica l'istruzione
- L'unità di esecuzione del processore esegue l'istruzione
- Alla fine risultati vengono salvati/inviati su un dispositivo di output
IL LINGUAGGIO ASSEMBLER
è composto da istruzioni simboliche che corrispondono a istruzioni binarie
Un programma ASSEMBLATORE
- Prende in ingresso un programma scritto in assembler
- Genera il corrispondente programma in linguaggio macchina
Un programma COMPILATORE
- Traduce un linguaggio di programmazione ad alto livello (es. C, Python, Java) al linguaggio assembler
- Talvolta traduce direttamente da linguaggio ad alto livello a linguaggio macchina
COMPILAZIONE
- È un processo di traduzione che, a partire da un programma scritto in linguaggio simbolico, ne genera una versione equivalente in linguaggio macchina
- Il programma risultante può essere eseguito direttamente sul calcolatore
INTERPRETAZIONE
- È un processo di esecuzione indiretta di un progr
-
Appunti lezione Calcolatori elettronici
-
Appunti lezione Calcolatori elettronici
-
Appunti Calcolatori elettronici - parziale
-
Appunti Calcolatori elettronici - parte seconda