La risposta breve
L'esadecimale (base 16) utilizza le cifre 0-9 e le lettere A-F, dove ciascuna posizione rappresenta una potenza di 16. FF in esadecimale equivale a 15×16 + 15 = 255 in decimale: il valore più grande che un singolo byte può contenere. I programmatori usano l'esadecimale perché si associa in modo pulito al binario: una cifra esadecimale equivale sempre esattamente a 4 bit, quindi due cifre esadecimali rappresentano un byte intero.
Punti chiave
- Due cifre esadecimali equivalgono a un byte (8 bit) - un valore da 00 a FF (da 0 a 255) - motivo per cui gli indirizzi di memoria, i valori dei byte e i codici colore sono quasi sempre visualizzati in esadecimale.
- La conversione da esadecimale a binario è meccanica: sostituisci ogni cifra esadecimale con il suo equivalente binario a 4 bit e uniscile insieme.
- L'aritmetica esadecimale segue la stessa logica di trasporto e prestito dell'aritmetica decimale, solo con una base di 16 invece di 10.
- I colori Web (#RRGGBB) racchiudono tre valori byte - rosso, verde, blu - in sei cifre esadecimali, due per canale di colore.
Valori delle cifre esadecimali (0-F)
| Esadecimale | Decimale | Esadecimale | Decimale |
|---|---|---|---|
| A | 10 | D | 13 |
| B | 11 | E | 14 |
| C | 12 | F | 15 |
Conversione da decimale a esadecimale
202 ÷ 16 = 12 resto 10 → A
12 ÷ 16 = 0 resto 12 → C
Leggere il resto dal basso verso l'alto: CA
Quindi il decimale 202 equivale a esadecimale CA. Verifica al contrario: C×16 + A = 12×16 + 10 = 192 + 10 = 202 — confermando la conversione.
Esempio realizzato: addizione esadecimale
3A+1F
A (10) + F (15) = 25 = 1×16 + 9 → scrivi 9, porta 1
3 + 1 + riporta 1 = 5
Risultato: 59
Controllo in decimale: 3A = 58, 1F = 31 e 58 + 31 = 89, che è 5×16 + 9 = 0x59 - corrisponde esattamente all'aritmetica esadecimale. L'unica vera differenza rispetto all'addizione decimale è che il riporto avviene quando una colonna raggiunge 16, non 10.
Errori comuni da evitare
- Porta per abitudine a 10 invece che a 16: una colonna esadecimale viene portata quando il suo valore raggiunge 16, non 10 come decimale.
- Supponendo che una singola cifra esadecimale sia un bit, rappresenta sempre 4 bit, poiché 16 = 2⁴.
- Eliminazione di uno zero iniziale su un byte a larghezza fissa o su un canale di colore: 0x0A e 0xA sono lo stesso valore, ma un display di byte a due cifre prevede 0A, non A.
- Mescolare maiuscole e minuscole in modo incoerente: hex non fa distinzione tra maiuscole e minuscole (a = A = 10), ma attenersi a un maiuscolo / minuscolo evita confusione visiva nei valori più lunghi.
Calcolatori correlati
- Calcolatore binario — funziona direttamente in base 2 insieme alle conversioni esadecimali.
- Calcolatore di grandi numeri — gestire valori che superano gli intervalli aritmetici esadecimali standard.
- Calcolatore dell'esponente — controlla le potenze di 16 dietro il valore posizionale di ciascuna cifra esadecimale.
- Calcolatrice di base — gestire l'aritmetica decimale quotidiana al di fuori di qualsiasi base specifica.