Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Schede del Tutorial

Home » Programma il Computer » Tutorial Assembly

Le Schede del Tutorial

  Misura dell'Informazione

SCHEDA n° 08 [ 9  di 11] 

    

    Il sistema di numerazione esadecimale [1 di 2]
     
bulletSiamo 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ù.

      

bulletResta il fatto che questi accidenti di numeri binari sono comunque illeggibili (visto che vanno letti in stretta sequenza, 1011 = unozerounouno).

      

bulletPoichè le informazioni binarie sono comunque indispensabili (il processore parla solo questa lingua...) è necessario trovar qualcosa che le renda gestibili anche da noi poveri umani..

      

Suggerimento 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.

      

bulletVediamo 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?

      

bulletNaturalmente 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...).

      

bulletLa 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.
bulletIl 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

      

bulletL'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.
bulletPer contro, rovesciando la logica, qualunque numero binario può essere immediatamente espresso con i simboli del sistema di numerazione esadecimale.

      

Suggerimento 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.

      

bulletEcco 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)

      

bulletPer 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

      

bulletVediamo 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

      

bulletNaturalmente 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

    

Pagina Precedente Scheda n° 08 Pagina Successiva Misura dell'Informazione Torna al Menu delle Schede del "Tutorial" Lezioni - Vai al DownLoad dei files DOC Torna al Menu del "Tutorial"
Scheda n° 08 -  9
1 2 3 4 5 6 7 8 9 10 11

    

SCHEDE » 1.Header EXE 2.PseudoOp MASM 3.Differenza tra Macro e Procedure
4.
Tabella Vettori 5.PSP 6.Stack 7.Istruzioni 80x86
8.La misura dell'Informazione 9.Numeri e Logica Binaria
TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati