Per poter fare qualcosa di utile con un calcolatore digitale, occorre potervi
inserire in memoria programmi e dati, e occorre potervi leggere i risultati.
Un modo concettualmente semplice per fare ciò, consiste nel sostituire
a certe celle di memoria dei semplici fili collegati a lampadine (Output) o
commutatori collegabili a massa o al voltaggio (Input).
Scrivendo un 1 su un output si accende le lampadina corrispondente. Leggendo
un Input si trova uno 0 oppure un 1 a seconda della posizione del commutatore.
In pratica si usano degli appositi CHIP che sono collegati come la
RAM ai vari BUS, al R/W, e che hanno un loro BUS di Input/Output.
Normalmente una parte della RAM è formata da ROM, e vi viene scritto
in fabbrica del Software che viene eseguito al momento del reset.
Errori
A volte persone poco informate citano la infallibilità dei calcolatori.
La genesi di questa voce è probabilmente questa:
A causa delle tolleranze in fase di costruzione, della agitazione termica delle
molecole, dei raggi cosmici, di eventi quantistici, e di altri eventi naturali,
è possibile che in un calcolatore progettato, realizzato e funzionante in
modo umanamente perfetto, accada che qualche bit venga modificato erroneamente.
Gli ingegneri sono in grado di calcolare la probabilità che ciò avvenga,
e scegliere i parametri di progetto e costruzione in modo che sia veramente molto
piccola. Roba tipo "1 bit in 10 miliardi di anni".
Comunque i calcolatori, come tutte le macchine complesse che costruiamo, possono
sbagliare.
Ci sono i difetti di fabbrica. Sopratutto per le RAM.
Moltissimi eventi (surriscaldamento, elettricità statica, radiazioni,...)
possono portare un calcolatore fuori dai suoi parametri di funzionamento e
quindi farlo sbagliare.
Ma sopratutto, più di ogni altra cosa ci sono gli errori di scrittura nel
software.
Questi ultimi sono gli errori più insidiosi: dopo tutto un errore casuale
dovuto a problemi Hardware porta spesso un bit errato in una istruzione e questo
molto spesso blocca il calcolatore in un loop o in uno stato impossibile che il
sistema operativo è in grado di scoprire (in tal caso di solito blocca la
macchina).
L'errore di scrittura nel software fa invece fare alla macchine le cose sbagliate !
Laboratorio di Comunicazione mediante Calcolatore - Sergio Steffè - AA 2018/2019 - PISA