Microprocessori e circuiti nei computer
Gli elementi base di un computer sono l’unità centrale (CPU), la memoria e i circuiti o unità output (I/O).
In un computer, tutti i dispostivi elettronici hanno i loro compiti diversi: la CPU legge le istruzioni, effettua operazioni aritmetiche e logiche, è memorizza temporaneamente istruzioni o dati nei suoi registri interni; la memoria memorizza tutti i programmi e i dati, mentre le unità logiche collegano l’unità centrale alle periferiche esterne, come la tastiera e il video. Questi elementi sono collegati tra loro mediante i bus del sistema; grazie ai continui progressi della tecnologia dei semiconduttori, è possibile avere in un solo circuito integrato la CPU del computer (questo circuito integrato è chiamato MICROPROCESSORE). La tecnologia di fabbricazione metallo-ossido-semiconduttore è la più utilizzata per la progettazione e la realizzazione dei microprocessori e circuiti.
IL BUS DI SISTEMA, sono delle linee che collegano i diversi elementi dell’elaborazione; il sistema ne contiene tre: Bus degli indirizzi, bus dei dati e bus di controllo.
IL BUS DEGLI INDIRIZZI, è unidirezionale, cioè che tutte le informazioni si trasmettono in un'unica direzione, dal microprocessore alla memoria o unità input/output.
IL BUS DEI DATI, è bidirezionale, cioè equivale a dire che le informazioni possono essere trasmesse in entrambi i sensi, dal microprocessore alla memoria, oppure dalle unità I/O, sia un una direzione o nell’altra.
IL BUS DI CONTROLLO, è formato da tutte le linee, sia di ingresso che quelle di uscita, utilizzate per sincronizzare le operazioni dei singoli elementi, che formano un elaboratore; segni di uscita tipici sono per esempio, quelli che servono per indicare se l’operazione in corso è di lettura o scrittura. Fra le linee di controllo di ingresso, attraverso le quali il microprocessore riceve segnali dagli elementi esterni, possiamo citare il segnale RESET, che viene utilizzato per l’inizializzazione o avvio del sistema.
I REGISTRI INTERNI, che possono essere dedicati ad un’attività specifica, oppure possono essere registrati generali. Un registro generale si usa indifferentemente per qualunque delle attività precedenti, e può variare in ciascuna istruzione sia il suo contenuto, sia il tipo di informazione utilizzata.
Il registro contatore di programma, contiene l’indirizzo di memoria in cui si trova l’istruzione successiva che deve essere eseguita dal microprocessore. E’ un registro che segnala o punta la zona di memoria di programma in cui sono memorizzate le istruzioni.
Il registro delle istruzioni, contiene l’istruzione che sarà eseguita; dopo aver letto l’istruzione della memoria esterna, il microprocessore la conserva in questo registro per la successiva decodificazione. Il registro di stato, è formato da un numero di bit singoli, ciascuno dei quali ha un proprio significato, detti flag; il flag di riporto C utilizza se il risultato di un’operazione aritmetica è superiore al numero massimo che può essere memorizzato nel registro accumulatore; nel registro accumulatore si conserva il risultato delle operazioni effettuate dalla ALU. Il registro puntatore di pila, si utilizza per indirizzare la pila del sistema. Lo SP contiene un indirizzo di memoria che, a seconda del microprocessore, indica l’ultima posizione occupata, oppure la prima posizione libera della pila. La pila del sistema è una zona di memoria in cui si memorizzano temporaneamente tutti i registri che il sistema o il programmatore considerino necessario recuperare quando si inizia nuovamente l’esecuzione del programma.
Il registro indice, si utilizza normalmente come contatore, in istruzioni di accesso a tabelle, sia per la scrittura sia per la lettura dei dati.