Sistemi di numerazione
Sistemi posizionali ●
●
Utilizzano un numero di cifre prefissato –
Binario (base 2): 2 cifre {0,1}
–
Ottale (base 8): 8 cifre da 0 a 7
–
Decimale (base 10): 10 cifre da 0 a 9
–
Esadecimale (base 16): 16 cifre da 0 a 9 + {A,B,C,D,E,F}
Ogni cifra ha un peso dipende dalla sua posizione –
La cifra più a sinistra è detta cifra più significativa
–
La cifra più a destra è detta cifra meno significativa
Sistema decimale ●
Il peso di ogni cifra è uguale a 10 elevato alla posizione occupata dalla cifra –
●
●
La posizione più a destra è 0
Il valore di una cifra si ottiene moltiplicando la cifra per il suo peso Il valore dell'intero numero è dato dalla somma dei valori delle singole cifre
Valore di un numero decimale ●
Esempio: (152)10 1
5
2
cifra
102
101
100
peso
1 x 102
5 x 101
2 x 100
valore
100 + 50 + 2 = 152
valore numero
Valore decimale di un numero binario ●
Esempio: (101)2 1
0
1
cifra
22
21
20
peso
1 x 22
0 x 21
1 x 20
valore
4+0+1=5
valore numero
Valore decimale di un numero ottale ●
Esempio: (123)8 1
2
3
cifra
82
81
80
peso
1 x 82
2 x 81
3 x 80
valore
64 + 16 + 3 = 83
valore numero
Valore decimale di un numero esadecimale ●
Esempio: (1AB)16 1
A (=10)
B(=11)
cifra
162
161
160
peso
1 x 162
10 x 161
11 x160
valore
256 + 160 + 11 = 427
valore numero
Conversione da base 10 ad altra base ●
Si utilizza il seguente algoritmo: –
Il numero da convertire in base 10 viene diviso (divisione intera) per l'altra base (2, 8 o 16)
–
Il resto della divisione diventa la cifra di posizione 0
–
Il quoziente viene diviso nuovamente per l'altra base e il resto ottenuto diventa la cifra di posizione 1
–
Il procedimento viene ripetuto fino a quando si ottiene un quoziente pari a zero
Conversione da base 10 a base 2 ●
Esempio (5)10 5/2
2/2
1/2
calcolo
2
1
0
quoziente
1
0
1
resto
0
1
2
posizione
(101)2
numero convertito
Conversione da base 10 a base 8 ●
Esempio (83)10 83/8
10/8
1/8
calcolo
10
1
0
quoziente
3
2
1
resto
0
1
2
posizione
(123)8
numero convertito
Conversione da base 10 a base 16 ●
Esempio (427)10 427/16
26/16
1/16
calcolo
26
1
0
quoziente
11 (=B)
10 (=A)
1
resto
0
1
2
posizione
(1AB)16
numero convertito
Conversione da base 2 a base 8 ●
●
●
A partire da destra, si raggruppano le cifre binarie in gruppi di 3 cifre Ogni terna viene convertita in decimale Tutte le cifre, prese nello stesso ordine di partenza, formano il numero in base 8 111
110
cifre binarie
7
6
cifre decimali
7
6
cifre ottali
76
numero convertito
Conversione da base 2 a base 16 ●
●
●
A partire da destra, si raggruppano le cifre binarie in gruppi di 4 cifre Ogni quaterna viene convertita in decimale Tutte le cifre, prese nello stesso ordine di partenza, formano il numero in base 16 0011
1111
cifre binarie
3
15
cifre decimali
3
F
cifre esadecimali
3F
numero convertito
Conversione dalla base 8 alla base 2 ●
●
●
Ogni cifra ottale viene trasformata in binario utilizzando l'algoritmo di conversione decimale-binario Le terne ottenute, prese nello stesso ordine, formano il numero binario Eventuali zeri a sinistra vengono eliminati 7
6
cifre ottali
7
6
cifre decimali
111
110
cifre binarie
111110
numero convertito
Conversione dalla base 16 alla base 2 ●
●
●
Ogni cifra esadecimale viene trasformata in binario utilizzando l'algoritmo di conversione decimale-binario Le quaterne ottenute, prese nello stesso ordine, formano il numero binario Eventuali zeri a sinistra vengono eliminati 3
F
cifre esadecimali
3
15
cifre decimali
0011
1111
cifre binarie
00111111 = 111111
numero convertito