|
 |
Misura dell'Informazione |
SCHEDA n° 08 [
9
di 11] |
 |
|
Il sistema di numerazione esadecimale [1 di 2] |
|
 | Siamo arrivati al punto finale... Ora sappiamo come
trasformare un numero binario in un
numero decimale, ma si tratta di una
conoscenza non strettamente necessaria: rende certamente un po' più sicuri...
Dà qualche certezza in più. |
 | Resta il fatto che questi accidenti di
numeri binari sono
comunque illeggibili (visto che vanno letti in stretta sequenza, 1011
=
unozerounouno). |
 | Poichè le informazioni binarie
sono comunque indispensabili (il
processore parla solo questa lingua...) è necessario trovar qualcosa che le
renda gestibili anche da noi poveri umani.. |
 |
Tutte le informazioni legate
alla gestione di un processore sono espresse con numeri
binari; per poterli rendere leggibili conviene esprimerli in forma
esadecimale, cioè interpretarli dal punto di vista di questo
sistema di numerazione. |
 | Vediamo dunque di definire anche il
sistema di numerazione
esadecimale ; la sua base
è 16 perchè 16 (esadeci) sono i suoi
elementi; e qui nasce il primo inghippo:
come scegliere i simboli da associare ai 16
elementi richiesti? |
 | Naturalmente i grandi pensatori hanno
risolto il problema per noi: ai 10 numeri (0,
1, 2,
3, 4,
5, 6,
7, 8 e
9) hanno aggiunto le prime 6 lettere (A,
B,
C,
D,
E e
F, che a me piace scrivere
maiuscole, ma non è una regola...). |
 | La presenza di 16 elementi
diversi ci permette di anticipare subito una considerazione importante:
ciascuno di essi ha una valenza proporzionata al
suo simbolo, cioè i primi 10 (i numeri) valgono logicamente da 0
a 9 e
i rimanenti 6 (le lettere) valgono (ancora) logicamente da
10 a 15. |
 | Il tutto è riassumibile dalla seguente
Tabella
che mostra il valore decimale e
binario degli
elementi del sistema di numerazione
esadecimale: |
elemento del
sistema di numerazione
esadecimale |
equivalente
decimale |
equivalente
binario |
|
0 |
0 |
0000 |
|
1 |
1 |
0001 |
|
2 |
2 |
0010 |
|
3 |
3 |
0011 |
|
4 |
4 |
0100 |
|
5 |
5 |
0101 |
|
6 |
6 |
0110 |
|
7 |
7 |
0111 |
|
8 |
8 |
1000 |
|
9 |
9 |
1001 |
|
A |
10 |
1010 |
|
B |
11 |
1011 |
|
C |
12 |
1100 |
|
D |
13 |
1101 |
|
E |
14 |
1110 |
|
F |
15 |
1111 |
 | L'analisi critica del contenuto della
Tabella porta ad una
conclusione piuttosto
interessante: ciascun elemento del sistema di numerazione
esadecimale è
in realtà un
numero binario a 4 Bit
, cioè un
Nibble. |
 | Per contro, rovesciando la logica, qualunque
numero binario può essere immediatamente
espresso con i simboli del sistema di numerazione
esadecimale. |
 |
Per rendere leggibile qualunque
numero binario
basta formattarlo
con un numero di cifre multiplo di 4 (aggiungendo
eventualmente degli 0 a sinistra); fatto questo è sufficiente
sostituire le quaterne di bit con il corrispondente simbolo del
sistema di numerazione esadecimale. |
 | Ecco la ragione per la quale è
conveniente conoscere a memoria tutta la sequenza delle 16
equivalenze: con un buon colpo d'occhio l'assurdo numero
1010001111001000 diventerà A3C8
(1010 = A,
0011 = 3,
1100 = C,
1000 = 8) |
 | Per onore di estetica l'equivalenza appena presentata è
affidabile solo se è chiaro senza dubbi il sistema
a cui appartengono le cifre da interpretare (il numero potrebbe essere anche
decimale o già esadecimale...); per questo è saggio mantenere la tecnica delle
parentesi e dei numerini in pedice, già proposta
in precedenza: |
|
(1010001111001000 )2 |
= (A3C8)16 |
 | Vediamo alcuni altri esempi: |
|
(10100111)2 |
1010 0111
A
7 |
(A7)16 |
|
(110110000)2 |
0001
1011 0000
1
B 0 |
(1B0)16 |
|
(11001010101)2 |
0110
0101 0101
6
5 5 |
(655)16 |
|
(111001010010011)2 |
0111
0010 1001 0011
7
2 9
3 |
(7293)16 |
|
(1010101111001101)2 |
1010 1011 1100
1101
A
B C
D |
(ABCD)16 |
 | Naturalmente la conoscenza delle 16
equivalenze consente anche l'operazione opposta, cioè la conversione da
esadecimale a binario, con la stessa medesima tecnica; per esempio: |
|
(12AB)16 |
0001 0010 1010
1011
1
2 A
B |
=
(1001010101011 )2 |
©
2001-2010 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|