I numeri nel calcolatore – 1 (Repost)

05.03.2013 19:31

Premessa: quelli che seguono, per alcuni, sono un insieme di concetti abbastanza tecnici e possono risultare noiosi. Ma visto che cerchiamo di usare il calcolare per qualcosa di più che scaricare video da Youtube e “taggare” foto o citazioni sui social network, è bene almeno sapere che certe cose esistono.

 

Come vengono rappresentati i numeri nel calcolatore ?

Essi vengono rappresentati tramite il sistema di numerazione “binario” che è un modo per rappresentare i numeri usando solo 2 cifre diverse lo zero e l’uno.

Questo sistema risulta particolarmente scomodo per l’essere umano, ma risulta di facile realizzazione a livello di circuiteria elettronica: infatti viene usato all’interno dei calcolatori digitali ( dall’inglese “digit” = numero ) per rappresentare i numeri con il minor impegno possibile di tecnologia e di componentistica ( e quindi di costo ).

In elettronica, una «cifra binaria» ( binary digit = Bit ) viene rappresentata con un singolo componente – normalmente un transistor (che è un “qualcosa” che in questo caso si comporta come un interruttore ) che lascia passare corrente nel caso rappresenti la cifra “1” e non la lascia passare in caso rappresenti la cifra “0”.

Ma prima di parlare del sistema binario, vediamo di chiarire meglio alcuni concetti di base sul sistema che usiamo di solito: il sistema “decimale”, quello che usiamo tutti i giorni.

Negli antichi sistemi di numerazione (vedi un la loro storia): quello usato nell’Impero Romano, Egizio, e nella civiltà Meso-americane prima della scoperta di Colombo, il valore delle cifre era intrinseco – ovvero si usavano simboli diversi per valori diversi es: X=10, L=50, D=500, M=1000. In altri paesi per rappresentare i numeri si usavano le lettere e per distinguerle dal semplice testo venivano “segnate” e ad ogni lettera veniva attribuito un valore, ad esempio:

A = 1, B=2, C=3…. e così via.

In molti di questi sistemi non esisteva lo zero e non esisteva il concetto di numeri negativi ( concetto che quotidianamente utilizziamo per quantificare lo scoperto che abbiamo sul conto corrente oppure per indicare le condizioni climatiche della neve sulle piste da sci ).

Il sistema di numerazione arabo, da cui deriva il nostro sistema è invece di tipo diverso: innanzitutto esisteva lo zero ed è un sistema di tipo diverso: è un sistema di numerazione “posizionale” ovvero in cui la posizione all’interno del numero di una data cifra le assegna un “peso” o un “valore” diverso.

Il sistema decimale ( che deriva direttamente dal sistema arabo ) e quello binario sono entrambi sistemi di numerazione posizionali.

Ad esempio il numero decimale seguente che esprime il valore di «centoventitremila quattrocento cinquantuno», contiene nella sua notazione decimale due cifre “1”:

123451

(¹)                            (²)

ma il valore della prima cifra uno (¹) [centomila] è ben diverso dall’altra cifra uno (²)[unità].

Cosa vuol dire questo ? Se consideriamo la cifra espressa in precedenza ovvero “123451” quale valore essa rappresenta ?

Valore = 1 * “centomila” + 2 * “diecimila” + 3 * “mille” + 4 * “cento” + 5 * “dieci” + 1 * “unità”

ovvero:

 centomila + ventimila + tremila + quattrocento + cinquanta + uno

ed in linguaggio corrente:

(cento venti tre) mila quattro cento cinquant uno

Si può notare che possiamo cambiare la rappresentazione del linguaggio corrente come segue:

centomila = 105 ( 10 alla quinta potenza )
diecimila = 104 ( 10 alla quarta potenza )
mille = 103 ( 10 alla terza potenza )
cento = 102 ( 10 alla seconda potenza )
dieci = 101 ( 10 alla prima potenza )
uno = 100 ( 10 alla potenza zero)

Riscrivendo l’espressione del valore della cifra avremo quindi che:

Valore = 1 * 105 + 2 * 104 + 3 * 103 + 4 * 102 + 5 * 101 + 1 * 100 (*)

Come appare evidente questa è una somma “pesata” di potenze di base 10. Evidenziandolo meglio col colore si vede che:

Valore = 1 * 105 + 2 * 104 + 3 * 103 + 4 * 102 + 5 * 101 + 1 * 100

  • in rosso abbiamo la “base” del sistema numerale cioè 10 ( siamo in presenza di una cifra epressa in un sistema in “base 10” o “decimale” )

  • in verde abbiamo “i pesi” di ogni potenza di 10 ovvero quante volte quel valore deve essere contato per avere il valore corretto della cifra

In altro modo possiamo rappresentare il valore così:

posizione 6 5 4 3 2 1
pesi 1 2 3 4 5 1
potenze 105 104 103 102 101 100

Nota bene: usiamo tutte potenze del 10 per questo viene detto sistema decimale o a base 10

La sequenza di cifre in verde è esattamente la rappresentazione decimale del valore espresso. La parte rossa è nell’uso quotidiano trascurato in quanto la posizione ( posizione – 1 = esponente del potenza ) indica il valore della potenza di 10 che quella cifra rappresenta.

In caso di una rappresentazione con una base generica avremo che la formula (*) diventa:

N= an * bn +  …….+a2 * b2 +a1 * b1 + a0 * b0  ( ** )

oppure, invertendo semplicemente l’ordine di scrittura:

N= a0 * b0 +  a1 * b1 + a2 * b2  + …… + an * bn

Per ora prendete un po’ di fiato, torneremo successivamente sull’argomento.