Qualunque CPU contiene:
una ALU (Unità Aritmetico-Logica) che si occupa di eseguire le operazioni logiche e aritmetiche;
una Unità di Controllo (Control Unit, CU) che esegue operazioni finalizzate al trasferimento dati o al controllo dell’esecuzione dei programmi;
Dei registri: dispositivi di memorizzazione usati per le elaborazioni interne alla CPU, cioè sequenze di N celle di memoria nelle quali si può leggere e scrivere un dato di N bit. Ogni cella di memoria elementare è costituita da un flip-flop, ovvero un dispositivo bistabile (che può assumere due stati stabili) in grado di memorizzare un bit (1 o 0). I registri hanno una velocità di accesso molto elevata ma possono memorizzare un numero piuttosto limitato di bit (8, 16, 32 o 64). Tra i registri della CPU ricordiamo:
uno o più registri accumulatori, contenenti i dati sui quali il programma sta operando, sono il riferimento per tutte le operazioni eseguite dall’ALU;
il registro istruzione (Instruction Register, IR), che contiene di volta in volta il codice dell’istruzione in esecuzione;
il contatore di programma (Program Counter, PC), che contiene l’indirizzo in memoria della prossima istruzione da eseguire;
il registro di stato (Status Register, SR), contenente informazioni, sotto forma di singoli bit (flag) , sullo stato in cui la CPU si viene a trovare dopo l’esecuzione dell’istruzione. I flag più importanti sono:
Zero: vale 1 se l'ultima operazione ha avuto risultato zero, altrimenti vale 0;
Carry: vale 1 se l'ultima operazione ha ecceduto la capacità del registro che contiene il risultato, altrimenti vale 0 (esempio: in un registro a 8 bit, che può rappresentare solo numeri da 0 a 255, la somma 178+250 darebbe come risultato 172 e il carry verrebbe posto a 1).
Interrupt: se a questo flag viene assegnato valore 1, la CPU smette di rispondere alle richieste di servizio esterne delle periferiche (i segnali delle linee IRQ) finché non viene ripristinato al valore 0, o finché non arriva dall'esterno un segnale di RESET.
Una generica CPU deve gestire una serie di operazioni sincronizzandole con il resto del sistema: perciò è dotata, oltre a quanto sopra elencato, anche di uno o più bus interni che si occupano di collegare registri, ALU, unità di controllo e memoria primaria. Inoltre, all'unità di controllo CU interna della CPU fanno capo una serie di segnali elettrici esterni che si occupano di tenere la CPU al corrente dello stato del resto del sistema e di agire su di esso. Il tipo e il numero di segnali esterni gestiti possono variare ma alcuni, come il RESET, le linee di IRQ e il CLOCK sono sempre presenti.
In un ciclo elementare la CPU preleva due operandi dai registri , li invia alla ALU che li elabora e il risultato viene messo in un registro.
Per saperne di più consulta i seguenti approfondimenti:
Tutto quanto riportato in questa pagina è a puro scopo informativo personale. Se non ti trovi in accordo con quanto riportato nella pagina, vuoi fare delle precisazioni, vuoi fare delle aggiunte o hai delle proposte e dei consigli da dare, puoi farlo mandando un email. Ogni indicazione è fondamentale per la continua crescita del sito.