TEORIA - Conversione numero decimale in binario
La conversione di un numero decimale in un numero binario può essere ottenuta dividendo il numero decimale per 2 e utilizzando il resto come il bit più a destra del numero binario e continuando a dividere il quoziente per 2 fino alla fine. Per comprendere meglio il metodo è opportuno fare un esempio. Il numero intero 45 può essere trasformato in numero binario nel seguente modo:
Numero decimale | | Numero binario |
45 diviso 2 = 22 con resto 1 | | 1 |
22 diviso 2 = 11 con resto 0 | | 01 |
11 diviso 2 = 5 con resto 1 | | 101 |
5 diviso 2 = 2 con resto 1 | | 1101 |
2 diviso 2 = 1 con resto 0 | | 01101 |
1 diviso 2 = 0 con resto 1 | | 101101 |
Il numero intero ( 45 )10 equivale al numero binario ( 101101 )2.
Dimostrazione. Per comprendere il metodo di conversione di un numero intero in un numero binario è necessario scrivere la formula di rappresentazione decimale del numero binario:
I = dn 2n + dn-1 2n-1 + d1 21 + d0 20
Per riprendere il nostro esempio, l'equivalenza tra il numero ( 45 )10 e il numero binario ( 101101 )2 può essere riscritta nel seguente modo:
45 = 1 x 25 + 0 x 24 + 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20
45 = 32 + 0 + 8 + 4 + 0 + 1
Dividendo il numero intero I per 2 si ottiene
I / 2 = dn 2n-1 + dn-1 2n-2 + d1 20 + d0 2-1
45 / 2 = 1 x 24 + 0 x 23 + 1 x 22 + 1 x 21 + 1 x 20
Il resto della divisione è la cifra binaria d0 che può assumere il valore 0 o 1 ed identifica la cifra ( bit ) più a destra del numero binario. Continuando la divisione per due è possibile ottenere le altre cifre del numero binario da destra verso sinistra. Nel nostro esempio, dopo aver diviso per 2 il numero 45 la cifra binaria d0 ( resto ) è pari a 1. Continuando la divisione del quoziente ( 11 )10 per 2 otteniamo come resto la cifra binaria d1 ( resto ) pari a 0 e così via fino alla fine.
Conversione di un numero con la virgola in un numero binario. Lo stesso metodo di conversione può essere utilizzato per convertire in binario la parte frazionaria di un numero decimale. Per farlo è necessario distinguere la parte intera del numero da quella frazionaria. Ad esempio, il numero decimale 45.7 deve essere scomposto in un numero intero 45 ed in un numero decimale frazionario 0.7. Abbiamo già visto come convertire in binario il numero intero 45 quindi possiamo concentrare la nostra attenzione sulla conversione della parte frazionaria 0.7. Per convertire la parte frazionaria in un numero binario moltiplichiamo il numero frazionario per 2 ed utilizziamo la parte intera del prodotto come la cifra ( bit ) più a sinistra della parte frazionaria del numero binario. Eliminiamo la parte intera del prodotto e moltiplichiamo di nuovo la parte frazionaria per 2 al fine di ottenere le altre cifre binarie del numero binario da destra verso sinistra. Facciamo un esempio pratico:
0.7 per 2 = 1.4 con parte intera 1 ( togliamo la parte intera e otteniamo il numero 0.4) | 1 |
0.4 per 2 = 0.8 con parte intera 0 | 10 |
0.8 per 2 = 1.6 con parte intera 1 ( togliamo la parte intera e otteniamo il numero 0.6) | 101 |
0.6 per 2 = 1.2 con parte intera 1 ( togliamo la parte intera e otteniamo il numero 0.2) | 1011 |
0.2 per 2 = 0.4 con parte intera 0 | 10110 |
Il numero decimale frazionario ( 0.7 )10 può essere rappresentato con approssimazione su base binaria con il numero binario ( .1011 )2. In conclusione, sapendo che il numero decimale intero ( 45 )10 è uguale al numero binario ( 101101 )2 e la parte frazionaria ( 0.7 )10 è uguale approssimativamente al numero binario ( .1011 )2, possiamo rappresentare il numero decimale ( 45.7 )10 con il numero binario ( 101101.1011 )2.
By ImaginSystems & Queen Gin