Gentilissimi e gentilissime,
proviamo a trasformare un numero del sistema decimale in
numero binario. Riprendiamo la tabella che è presente su un post precedente:
2 7
|
2 6
|
2 5
|
2 4
|
2 3
|
2 2
|
2 1
|
2 0
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
Come potete notare, sono vuote la prima e l’ultima riga. Consideriamo
un numero come esempio:
197
Ovviamente, se tale numero fosse maggiore di 256, e minore
di 512, dovremmo ampliare la nostra tabella con una colonna a sinistra,
inserendo la potenza 2 alla ottava. Continuando ad inserire colonne a sinistra,
e relative potenze di 2, potremmo, teoricamente, scrivere in codice binario
qualsiasi numero. Per comodità, negli esercizi, si giunge, solitamente, come “colonna
ultima”, alla potenza 2 alla decima.
Riprendiamo l’esempio: dal numero 197 possiamo sottrarre
128? Se la risposta è SI’, come in questo caso, SOPRA al 128, ossia sopra alla
potenza 2 7, scriviamo 1, nel
modo seguente:
1
|
|||||||
2 7
|
2 6
|
2 5
|
2 4
|
2 3
|
2 2
|
2 1
|
2 0
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
Eseguiamo la sottrazione: 197-128=69. Consideriamo tale
differenza “come se fosse” il numero da trasformare. Procediamo allo stesso
modo. Ovviamente dobbiamo prendere in considerazione la potenza con esponente
immediatamente inferiore, ossia 2 alla sesta = 64.
Dal numero 69 possiamo sottrarre 64? La risposta, ancora una
volta, è SI’. Quindi, sopra al numero 64 della tabella, nella prima riga,
scriveremo 1. Otterremo la tabella seguente:
1
|
1
|
0
|
|||||
2 7
|
2 6
|
2 5
|
2 4
|
2 3
|
2 2
|
2 1
|
2 0
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
Proseguiamo analogamente! Calcoliamo la differenza: 69-64=5.
Prendiamo 5 come numero da trasformare.
Consideriamo la potenza immediatamente inferiore. Possiamo togliere
32 da 5, ossia, nei numeri naturali, possiamo eseguire la sottrazione 5-32? La
risposta, questa volta, è NO. Sopra il 32 e 2 alla quinta scriveremo 0. Consideriamo la potenza immediatamente
inferiore, ossia 16 e procediamo analogamente.
Anche in questo caso, in N, non è possibile eseguire l’operazione
5-16. Scriveremo, nella prima riga, sopra al 16, uno zero. Avverrà la stessa
cosa con 8. Scriveremo 0. Otterremo una tabella come la seguente:
1
|
1
|
0
|
0
|
0
|
|||
2 7
|
2 6
|
2 5
|
2 4
|
2 3
|
2 2
|
2 1
|
2 0
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
L’operazione 5-4, invece, è possibile. Infatti 5-4=1. Sopra il
4 scriveremo 1. Consideriamo tale differenza come numero da trasformare.
1-2 non è possibile. Sopra il 2 alla prima scriveremo 0.
Consideriamo 1. 1-1=0 sopra 2 0 scriveremo 1.
Otterremo la tabella seguente:
1
|
1
|
0
|
0
|
0
|
1
|
0
|
1
|
2 7
|
2 6
|
2 5
|
2 4
|
2 3
|
2 2
|
2 1
|
2 0
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
Trascriviamo, per controllo, i valori che corrispondono,
nella prima riga, a 1, nel modo seguente:
1
|
1
|
0
|
0
|
0
|
1
|
0
|
1
|
2 7
|
2 6
|
2 5
|
2 4
|
2 3
|
2 2
|
2 1
|
2 0
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
128
|
64
|
4
|
1
|
Sommiamo, per controllo, tali numeri:
128+64+4+1=197
Se tale controllo è corretto possiamo scrivere il risultato,
come spiegato in un post precedente. Scriviamo il numero iniziale, con al
pedice, la base 10. Dopo le doppie frecce, ricopiamo la prima riga:
197 (10) ↔ 11000101 (2)
Provate Voi: trasformate il numero
209 in numero binario.
Al solito, inviate pure per
commento le Vostre risposte e richieste.
NR, Nonna Rispondente (speriamo,
alle aspettative!)
Mi pare di aver capito la teoria dei numeri binari.
RispondiEliminaGentilissimo Ulisse,
RispondiEliminami fa piacere. Complimenti!
Invia, come commento, la Tua soluzione e, se vuoi, trasforma il numero 316 in numero binario. NR
209(10)<-->11010001(2)
RispondiElimina316(10)<-->100111100(2)
RispondiEliminaGentilissimo Nonno, corretta la trasformazione in binario di 209. Così pure per 316. Complimenti: hai giustamente aggiunto una colonna a sinistra. NR
RispondiElimina