Esercitazioni pratiche di elettronica/I sistemi di numerazione/Conversione da base 10 in base 2

Indice del libro

Dato un numero in base 10 lo voglio convertire in base 2...


La figura mostra l'algoritmo da eseguire per la conversione.

Esempio:

  • Convertiamo 35 da base 10 in base 2

N=35

B=10

E=0

Nb=0000


2^E=1

1 è > 35 ? No

Allora E = E+1 = 1

2^E=2

2 è > 35 ? No

Allora E = E+1 = 2

2^E=4

4 è > 35 ? No

Allora E = E+1 = 3

2^E=8

8 è > 35 ? No

Allora E = E+1 = 4

2^E=16

16 è > 35 ? No

Allora E = E+1 = 5

2^E=32

32 è > 35 ? No

Allora E = E+1 = 6

2^E=64

64 è > 35 ? Sì

Allora E = E-1 = 5

Nb=Nb+2^E= 100000

N=N-2^E = 35-32=3

E=0

2^E=1

1 è > 3 ? No

Allora E = E+1 = 1

2^E=2

2 è > 3 ? No

Allora E = E+1 = 2

2^E=4

4 è > 3 ? Sì

Allora E = E-1 = 1

Nb=100000 + 10

N=N-2^E = 3-2=1

E=0

2^E=1

1 è = 1 ? Sì

Nb=100000 + 10 + 1

N=N-2^E = 1-1=0

NB

100000+

000010+

000001=


100011

FINE


  • Più semplicemente.....

Tenere a portata di mano una tabellina con le potenze in base 2 in ordine crescente a partire dall'esponente zero:


Exp 2^Exp
0 1
1 2
2 4
3 8
4 16
5 32
6 64
7 128
8 256
9 512
... ...
  • Eseguire passo-passo il seguente algoritmo:


Passo Azione
1 Dato il numero in base 10 N=35
2 Cerco nella tabellina di cui sopra, la potenza Exp del 2

tale che 2^Exp <= N

3 Aggiungi la potenza trovata al risultato => Risult
4 N = N - 2^Exp
5 Se N = 0 hai terminato!!!
6 Altrimenti torna al punto 2
  • Ad Esempio: Convertiamo 35 da base 10 in base 2...

N = 35

2^5 = 32 < N

Risult = 2^5

N = 35 - 32 = 3

Torno al punto 2

2^1 = 2 < N

Risult = 2^5 + 2^1

N = 3 - 2 = 1

Torno al punto 2

2^0 = 1 = 1

Risult = 2^5 + 2^1 + 2^0

N = 1 - 1 = 0

Ho terminato.


Infine trasformo il Risultato espresso in potenze del 2

nel numero binario cercato, sostituendo la cifra 1 nelle posizioni

relative agli esponenti della base 2 che compaiono nel risultato e

pongo a 0 le cifre nelle altre posizioni.


Peso 5 4 3 2 1 0
Numero in base 2 1 0 0 0 1 1