Conversione decimale – binario

By zoris

Ci sono solamente 10 tipi di persone nel mondo:
chi comprende il sistema binario e chi no

Gli algoritmi riportati nei manuali per convertire un numero intero dal sistema decimale al sistema binario sono spesso complicati e poco pratici. Anche quelli reperibili in vari siti Internet non sono migliori.
E’ vero che ci sono i calcolatori tascabili (e anche la calcolatrice scientifica di Windows), ma non sempre sono a portata di mano.
Qui di seguito propongo due algoritmi molto semplici e pratici da usare.

Conversione binario – decimale
Il metodo si comprende meglio con un esempio. Si debba convertire in base 10 il numero binario 1011001.

Soluzione:
1   0   1   1    0   0    1
1   2   5  11  22  44  89

Spiegazione: si scrive il numero binario dato; sotto il primo 1 si scrive 1, e successivamente, procedendo da sinistra verso destra, si raddoppia il numero che si trova a sinistra, aggiungendo però 1 al risultato se ci si trova in corrispondenza di un 1 nella riga superiore. Per esempio ho scritto 2 dopo il primo 1 perché sopra c’è uno zero, ma dopo il 2 ho scritto 5 (cioè 2×2+1) perché sopra c’è un 1. L’ultimo numero a destra (in questo caso 89) è il numero decimale corrispondente al numero binario dato. Infatti
1011001 (b) = 89 (d)  come si può facilmente verificare.

Altro esempio:
1   0   1    1     1
1   2   5   11   23
quindi: 10111(b) = 23(d)

Conversione decimale – binario
Anche in questo caso conviene illustrare il metodo con un esempio. Sia da convertire in base 2 il numero decimale 89.

Soluzione:
89  44  22  11  5  2  1
1    0    0    1    1  0  1
89(d) = 1011001(b)

Spiegazione: si scrive il numero decimale dato e si procede verso destra dimezzando il numero che precede, omettendo la parte dopo la virgola. Quindi dopo 89 la metà sarebbe 44,5 ma scrivo solo 44, e così continuando fino a quando ottengo 1 come risultato. Successivamente nella riga sottostante scrivo uno zero in corrispondenza dei numeri pari, un 1 in corrispondenza dei numeri dispari.
Il numero binario cercato è quello che si ottiene scrivendo le cifre della seconda riga in senso inverso, cioè cominciando dall’ultima cifra.

Altro esempio:
23  11  5  2  1
1     1   1   0  1
quindi:  23(d) = 10111(b)

Tag: ,

Lascia un commento