Il sitema esadecimale (hexadecimal)

Come abbiamo visto nelle scorse "puntate" del codice binario, un numero in base 2 è molto lungo e complesso di un numero decimale e, almeno credo, nessuno va mai dal panettiere e dice vorrei 1010 panini... Quindi, vediamo oggi un altro sistema di numerazione che ci permette di passare da uno all'altro più facilmente.
E' molto più semplice del binario e si usa, ad esempio, quando si programma per inserire numeri (che in decimale non si possono inserire) più facilmente. Come avrai capito dal titolo, sto parlando dell'esadecimale, detto "hexadecimal" in inglese. E' molto importante la sigla in inglese perché, come detto tantissime volte, l'elaboratore non capisce niente al di fuori del binario. Quindi, per far capire al programma che usiamo per programmare che il numero inserito è decimale, si scrive una H alla fine. Per il binario una B e per il decimale niente, è sott'inteso. Questo perché se non c'è la possibilità di aggiungere la base 2 (per esempio) che andrebbe messa come pedice del numero, si indica con la B finale. Quindi, adesso, cominciamo con la spiegazione.
L'esadecimale utilizza i numeri dallo 0 al 15, quindi sedici numeri in tutto. I numeri, però devono avere una sola cifra, quindi ti scriverò tutti i numeri che utilizza e tra parentesi il valore in decimale.
0 (0); 1 (1); 2 (2); 3 (3); 4 (4); 5 (5); 6 (6); 7 (7); 8 (8); 9 (9);  A (10); B (11); C (12); D (13); E (14); F (15).
Ecco tutti i numeri dell'esadecimale. Ti faccio ora un esempio di come si trasforma un numero binario in esadecimale.

101010000010 B

Come ti ho già accennato, la B finale indica che il numero è binario. Se sei un attento osservatore, avrai notato che il numero non ha sedici cifre, 2 byte quindi, ma non ho aggiunto gli zeri all'inizio per comodità (vedi articoli precedenti). A questo punto, dividiamo il numero in gruppi di quattro cifre partendo da destra e spostandoci man mano verso sinistra. Verrà quindi così:

1010 1000 0010 B

Questa è la "fase A". Per la "fase B" dobbiamo scrivere sotto ogni cifra di ogni gruppo di quattro una potenza di 2, partendo da 2^0 che sarà a destra per arrivare a 2^4 sulla cifra più a sinistra, un po' come facevamo per passare da binario a decimale.
 
       1010         1000         0010     B
  23222120    23222120     23222120

Adesso dobbiamo calcolare i risultati delle potenze e sommarli tra loro, sempre restando in gruppi di quattro cifre. Come per passare da binario a decimale, devi tenere conto solo dei risultati delle potenze che sopra hanno il numero 1. Quindi:

         1010         1000         0010     B
  23222120    23222120     23222120
8     2             8                         2

Qui sopra non ho scritto i risultati delle potenze con il numero 0 sopra per non creare confusione. Il risultato, quindi, sarà:



  1010         1000         0010     B
  23222120    23222120     23222120
  8     2             8                         2
  8+2=10          8                         2

Come sappiamo, però, 10 in esadecimale si scrive A. Il risultato finale sarà allora:  A82 H.
La H finale, ti ricordo, è solamente per indicare che il numero è espresso in esadecimale. Ora è molto più facile, non credi? Se vuoi esercitarti, ti lascio alcuni numeri da "tradurre" da binario ad esadecimale.
1101011101010101 B
1111010001111011 B
Ti sembreranno numeri lunghi, ma un numero in binario può essere molto più lungo! Adesso prova a farli diventare esadecimali. Se hai dubbi o curiosità, scrivimi qui sotto nei commenti. A domani per una nuova "lezione".
Ciao ;-)






Commenti

Post popolari in questo blog

Alfabeto in binario