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: matematica, sistema binario