Esadecimale
L'esadecimale è un sistema numerico in base 16 usato per rappresentare dati binari. A differenza del sistema in base 10 (o decimale), che usa 10 simboli per rappresentare i numeri, le cifre esadecimali usano 16 simboli: i numeri "0"-"9" per rappresentare i valori da 0 a 9 e le lettere "A"-"F" per rappresentare i valori da 10 a 15.
In un sistema in base 10, si conta in multipli di 10. Dopo ogni gruppo di 10, si incrementa la cifra successiva a sinistra: per esempio, contando "8-9-10-11-12" si incrementa la seconda cifra (la colonna delle decine) da 0 a 1 e si riporta la prima cifra (la colonna delle unità) a 0; contando "98-99-100-101-102" si incrementano sia la seconda sia la terza cifra (la colonna delle centinaia). In un sistema in base 16, invece, si incrementa la cifra successiva a sinistra ogni 16 valori: per esempio, contando "8-9-A-B-C-D-E-F-10-11-12", la seconda cifra non viene incrementata fino a dopo F (il quindicesimo valore), invece che dopo 9.
I computer usano i valori esadecimali per rappresentare i dati binari in un formato più breve e leggibile per le persone. Invece di una lunga stringa di 0 e 1, i valori esadecimali sono compatti e facili da leggere. Ogni cifra esadecimale rappresenta una possibile combinazione di 4 bit, chiamata anche nybble; per esempio, la cifra esadecimale B rappresenta la specifica sequenza di bit 1011. Poiché un byte è composto da 8 bit, una combinazione di due cifre esadecimali può rappresentare qualsiasi byte possibile. Le cifre esadecimali inoltre non distinguono tra maiuscole e minuscole: bb74 e BB74 rappresentano lo stesso valore.
I numeri esadecimali possono rappresentare anche numeri grandi usando meno caratteri rispetto ai numeri decimali. Per esempio, due cifre esadecimali possono rappresentare qualsiasi valore compreso tra 0 e 255, mentre sei cifre esadecimali possono rappresentare qualsiasi valore compreso tra 0 e 16.777.215. Per esempio, i valori seguenti rappresentano tutti lo stesso numero:
- Decimale: 47.988
- Esadecimale: BB74
- Binario: 1011 1011 0111 0100
Uso dei numeri esadecimali
Poiché molti numeri esadecimali possono essere interpretati erroneamente come numeri decimali o parole, spesso includono una notazione speciale per indicare che sono numeri esadecimali. Per esempio, Unix e il linguaggio di programmazione C così come i suoi derivati, come (C++ e Java) usano il prefisso 0x prima di un numero esadecimale nel codice sorgente; per esempio, 0xBB74. I caratteri Unicode rappresentati da numeri esadecimali usano il prefisso U+; per esempio, la lettera "T" in Unicode è U+0054.
I web designer e i grafici usano spesso i valori esadecimali per rappresentare i colori RGB mediante codici colore esadecimali. Questi codici iniziano con il simbolo #, seguito da sei cifre esadecimali: due cifre rappresentano un valore compreso tra 0 e 255 per ciascun canale rosso, verde e blu. Per esempio, #800080 rappresenta il colore viola mescolando rosso e blu in quantità uguali (usando la cifra esadecimale 80, che rappresenta il valore 128) e senza verde (usando la cifra esadecimale 00, che rappresenta il valore 0). Sei cifre esadecimali possono rappresentare più di 16 milioni di colori possibili.
Metti alla prova le tue conoscenze