Fastweb

Perché i computer utilizzano i numeri binari

Zombieland Internet #zombieland #cpu Come funziona Zombieland, il nuovo bug dei processori e come difendersi Nuova vulnerabilità hardware colpisce i processori Intel. Ecco come funziona e quali sono i rimedi per mettersi al sicuro
ISCRIVITI alla Newsletter
Inserendo l'indirizzo email autorizzi Fastweb all'invio di newsletter editoriali. Se non desideri più ricevere la newsletter, è sufficiente cliccare sul link presente in calce alle mail per richiederne la cancellazione. Condizioni di utilizzo.
Perché i computer utilizzano i numeri binari FASTWEB S.p.A.
Numeri binari
Internet
I computer odierni, per quanto potenti e performanti, utilizzano principi logici vecchi di decenni per eseguire ogni tipo di programma. Alla base di tutto, però, troviamo la matematica binaria

Anche se potrebbe sembrare esattamente il contrario, i computer non comprendono le parole e i numeri nel modo in cui li comprendiamo noi. I moderni software sono piuttosto bravi a farci credere il contrario, ma al livello più basso nel computer (così come nello smartphone o in qualunque altro dispositivo elettronico) tutto è rappresentato da un segnale elettrico binario che può "esistere" solo in due stati fisici ben definiti: acceso (nel caso si registri un passaggio di corrente elettrica) o spento (se non si registra il passaggio di corrente elettrica). Questi stati fisici sono rappresentati nel linguaggio del computer attraverso un sistema binario che consente al processore di un qualunque sistema informatico di eseguire le operazioni alla base dei moderni software e applicativi.

Nel momento in cui tu stai leggendo questo articolo, i chip e i transistor che compongono l'unità di elaborazione dati (CPU o GPU) del tuo computer o del tuo smartphone sono attraversati da un flusso continuo di elettroni generato dalla batteria (o dal cavo di alimentazione) che determina il comportamento esteriore del dispositivo stesso (nel nostro esempio, la visualizzazione dell'articolo sui numeri binari pubblicato dal Digital Magazine di Fastweb.it). L'accensione o meno dei pixel dello schermo – così come qualunque altra funzione del dispositivo – è determinata proprio dal passaggio o meno degli elettroni all'interno degli appositi transistor e dal modo in cui i driver grafici del computer "interpretano" i segnali binari in arrivo dalla scheda video.

Resta da capire, dunque, cosa sia un sistema binario, come esso funziona e perché, agli albori dell'informatica moderna, i pionieri della materia scelsero proprio questo sistema numerico invece che altri.

 

Sistema binari

 

Cos'è un sistema binario

Quando si parla di sistema binario ci si riferisce a un sistema numerico in base 2. Ossia, composto solo da due cifre (convenzionalmente 0 e 1) che nel linguaggio informatico corrispondono agli stati fisici (acceso e spento) dei transistor che compongono i vari chip. Molto probabilmente, il sistema numerico a base 10 (o sistema decimale) è molto più familiare. Questo sistema numerico si compone di dieci cifre (convenzionalmente 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9) e usa le loro combinazioni per formare tutti i numeri immaginabili. Nel sistema decimale, ogni cifra posta alla sinistra di un'altra vale 10 volte tanto quella che sta alla sua destra (10 vale dieci volte 1; 100 vale dieci volte 10 e così via). Il sistema binario è identico, solo che ogni cifra vale due volte tanto quella che la precede.

Come funziona un sistema binario

Rappresentare i numeri nel sistema binario è, almeno in prima battuta, un po' più complesso rispetto a quello cui siamo abituati. Nel binario, la cifra in prima posizione (quella più a destra) vale 1 nel sistema decimale; la seconda cifra (di una posizione più a sinistra rispetto alla precedente) vale 2 nel decimale; la terza cifra vale 4; la quarta cifra vale 8 e così via raddoppiando di volta in volta. Ad esempio, il numero binario 1111 equivale al numero 15 nel decimale (sarebbe 8+4+2+1). Se a questa equazione si aggiunge anche lo "0", otteniamo che con le prime quattro cifre binarie è possibile rappresentare i primi 16 numeri del sistema decimale (0000 corrisponde a 0; 0001 corrisponde a 1; 0010 corrisponde a 2; 0011 corrisponde a 3; 0100 corrisponde a 4 e così via fino ad arrivare a 1111=15).

 

Contatore numeri binario Un contatore binario rappresentante i numeri decimali da 0 a 31

 

Se le cifre binarie (in inglese binary digit, abbreviato in "bit") diventano 8 (che nel linguaggio informatico corrispondono a 1 byte, ovvero, appunto, 8 bit), le combinazioni decimali (e quindi i possibili stati del sistema elettronico dei computer) salgono a 256. Insomma, almeno a prima vista, sembra che il sistema binario non sia solamente più complesso da capire, ma anche meno efficiente: mentre quattro cifre binarie rappresentano 16 stati differenti (da 0 a 15), con 4 cifre decimali si possono rappresentare ben 10.000 stati differenti (da 0 a 9.999).

Perché il sistema binario

Viene naturale porsi la domanda perché scegliere il sistema binario per rappresentare il linguaggio informatico? Perché per un computer, composto da transistor e chip, è molto più semplice "contare" in base 2 che in base 10. Agli albori dell'informatica moderna (stiamo parlando dell'immediato secondo dopoguerra), misurare e controllare i segnali elettrici in maniera precisa era molto più complesso rispetto a oggi. Per i pionieri dell'informatica (come Von Neumann o Alan Turing) era molto più facile e sensato distinguere sommariamente tra "Acceso" e "Spento" (ovvero "0" e "1" in ambito binario) anziché tra dieci intensità di corrente differenti tra loro (misurazione praticamente impossibile con gli strumenti dell'epoca). Questo ha portato i computer a rappresentare cifre e lettere tramite la combinazione di diversi stati binari generati dal passaggio (o dall'interruzione) di corrente elettrica attraverso un transistor (ovvero una cella di memoria).

Questo sistema, infatti, ha consentito di utilizzare molto più facilmente i principi della Logica Booleana (e i suoi operatori principali AND, OR, XOR e così via) per compiere operazioni e istruzioni via via più complesse. I transistor che compongono i chip di un computer (spesso e volentieri chiamati porte o gates, dal momento che si aprono o chiudono per consentire o impedire il passaggio del flusso di elettroni) prendono due input e li combinano insieme per compiere una delle operazioni della logica booleana, così da ottenere un altro input da "consegnare" al transistor successivo.

 

Numeri binari

 

Nonostante siano passati ormai diversi decenni, anche i computer e gli smartphone odierni utilizzano questo stesso sistema, basato su logica booleana e matematica binaria, per eseguire le istruzioni di qualunque software, dal più semplice al più complesso.

Informatica non binaria: qubits e fasci laser

I limiti della Legge di Moore (teorizzata dall'omonimo co-fondatore di Intel, prevede che i transistor all'interno di un chip raddoppino ogni 18-24 mesi) hanno portato ingegneri e scienziati a cercare strade alternative che permettessero di continuare a migliorare costantemente le performance dei processori. Una di queste strade ha portato allo sviluppo – sperimentale, al momento – di informatiche non binarie. L'informatica quantistica e quella fotonica ne sono due esempi.

Nel primo caso, alla base di tutto troviamo il qubit o bit quantistico, in grado, a certe condizioni e con alcuni limiti, di assumere contemporaneamente più valori. Sfruttando le leggi della quantistica, infatti, nello stesso istante il qubit può assumere sia il valore "0" che "1". Inutile dire che questo comportamento del qubit amplifica in maniera esponenziale le possibili combinazioni che possono scaturire dalle operazioni con 2 o più qubit. Un qubyte (8 qubit), tanto per fare un esempio, può assumere oltre 65mila differenti combinazioni, contro le 256 del normale byte.

Con l'informatica fotonica, che utilizza fasci laser per maneggiare i dati, si potrebbero ricavare un numero ancora maggiore di combinazioni. Alcune ricerche d'avanguardia hanno dimostrato che è infatti possibile, modulando opportunamente l'intensità di alcuni fasci laser che interagiscono con celle di memoria costituite da un particolare materiale in grado di modificare la sua struttura molecolare (passando da amorfa a cristallina), modificare anche solo in parte la struttura molecolare delle varie celle. In questo modo si è riusciti ad ottenere, oltre al classico "1" e "0" (rispettivamente 100% cella cristallina, 100% cella amorfa), anche alcuni valori intermedi (ad esempio 50% amorfo e 50% cristallino).  Questo ha reso possibile, nel corso dei primi esperimenti, archiviare i dati in otto differenti combinazioni per ogni singola cella.

copyright CULTUR-E

Ti piace
questo
articolo?
Iscriviti alla nostra Newsletter

Riceverai settimanalmente le notizie più
interessanti sul mondo della tecnologia!

Inserendo l'indirizzo email autorizzi Fastweb all'invio di newsletter editoriali. Se non desideri più ricevere la newsletter, è sufficiente cliccare sul link presente in calce alle mail per richiederne la cancellazione. Condizioni di utilizzo.
TAGS: #informatica #cpu #gpu

© Fastweb SpA 2019 - P.IVA 12878470157
ChiudiChiudi Questo sito usa cookies di profilazione, propri e di terzi, per adeguare la pubblicità alle tue preferenze.
Clicca qui per maggiori informazioni o per conoscere come negare il consenso. Se chiudi questo banner o accedi ad altri elementi della pagina acconsenti all'uso dei cookies.