04. Conversione da decimale

Conversione da decimale a binario

Metodo delle divisioni successive

Il metodo delle divisioni successive consente di convertire un numero decimale intero in un numero binario tramite la seguente procedura :

    • Si effettua la divisione intera del numero N di partenza per due e si prende il resto (che può essere 0 oppure 1). E' questa la cifra meno significativa (cioè quella più a destra) della rappresentazione binaria.

    • Si effettua la divisione intera del quoziente Q, ottenuto dalla divisione precedente, per 2 e si prende il resto. E' questa la seconda cifra meno significativa della rappresentazione binaria (si scrive a sinistra della cifra precedente).

    • Si itera il procedimento fin quando il quoziente sarà uguale a zero.

Esempio:

Convertiamo il numero 18(10) in binario:

18 : 2 = 9 con resto 0

Numero binario in costruzione: 0(2)

9 : 2 = 4 con resto 1

Numero binario in costruzione: 10(2)

4 : 2 = 2 con resto 0

Numero binario in costruzione: 010(2)

2 : 2 = 1 con resto 0

Numero binario in costruzione: 0010(2)

1 : 2 = 0 con resto 1

Numero binario in costruzione: 10010(2)

Quindi:

18(10) = 10010(2)

Metodo delle potenze decrescenti di due

Questo metodo richiede di predisporre una tabella con le potenze di 2, in modo da velocizzare i calcoli:

Per semplicità espositiva si parte direttamente con un esempio: convertire il numero 357(10) in binario.

    • Si ricerca nella tabella il valore numerico più grande contenuto in 357. In questo caso il numero 256.

    • Costruiamo una tabella come quella sottostante che replica parzialmente la tabella precedente e inseriamo il valore 1 in corrispondenza della cella che conteneva 256.

    • Calcoliamo la differenza 357 - 256 = 101.

    • Ripetiamo il ragionamento e ricerchiamo il valore numerico più grande contenuto in 101. In questo caso il numero 64. Inseriamo il valore 1 in corrispondenza della cella che conteneva 64.

    • Calcoliamo la differenza 101 - 64 = 37.

    • Ricerchiamo il valore numerico più grande contenuto in 37. In questo caso il numero 32. Inseriamo il valore 1 in corrispondenza della cella che conteneva 32.

    • Calcoliamo la differenza 37 - 32 = 5.

    • Ricerchiamo il valore numerico più grande contenuto in 5. In questo caso il numero 4. Inseriamo il valore 1 in corrispondenza della cella che conteneva 4.

    • Calcoliamo la differenza 5 - 4 = 1.

    • Ricerchiamo il valore numerico più grande contenuto in 1. In questo caso il numero 1. Inseriamo il valore 1 in corrispondenza della cella che conteneva 1.

    • Completiamo la tabella con tutti 0.

Il numero che ricerchiamo è dunque 101100101(2)

Conversione da decimale a esadecimale

Metodo delle divisioni successive

Il metodo delle divisioni successive consente di convertire un numero decimale intero in un numero esadecimale tramite la seguente procedura :

    • Si effettua la divisione intera del numero N di partenza per 16 e si prende il resto (che può essere un numero compreso tra 0 oppure 15). Il resto deve essere scritto con una singola cifra esadecimale. E' questa la cifra meno significativa (cioè quella più a destra) della rappresentazione esadecimale.

    • Si effettua la divisione intera del quoziente Q, ottenuto dalla divisione precedente, per 16 e si prende il resto. Il resto deve essere scritto con una singola cifra esadecimale. E' questa la seconda cifra menu significativa della rappresentazione esadecimale (si scrive a sinistra della cifra precedente).

    • Si itera il procedimento fin quando il quoziente sarà uguale a zero.

Esempio:

Convertiamo il numero 387(10) in esadecimale:

387 : 16 = 24 con resto 3

La cifra 3 in esadecimale resta invariata

Numero esadecimale in costruzione: 3(16)

24 : 16 = 1 con resto 8

La cifra 8 in esadecimale resta invariata

Numero esadecimale in costruzione: 83(16)

1 : 16 = 0 con resto 1

La cifra 1 in esadecimale resta invariata

Numero esadecimale in costruzione: 183(16)

Esempio:

Convertiamo il numero 683(10) in esadecimale:

683 : 16 = 42 con resto 11

Il numero 11 in esadecimale si rappresenta con la cifra B

Numero esadecimale in costruzione: B(16)

42 : 16 = 2 con resto 10

Il numero 10 in esadecimale si rappresenta con la cifra A

Numero esadecimale in costruzione: AB(16)

2 : 16 = 0 con resto 2

La cifra 2 in esadecimale resta invariata

Numero esadecimale in costruzione: 2AB(16)

Esempio:

Convertiamo il numero 4810) in esadecimale:

48 : 16 = 3 con resto 0

La cifra 0 in esadecimale resta invariata

Numero esadecimale in costruzione: 0(16)

3 : 16 = 0 con resto 3

La cifra 3 in esadecimale resta invariata

Numero esadecimale in costruzione: 30(16)