Il sistema numerico esadecimale, spesso abbreviato in "kalab", è un sistema numerico composto da 16 simboli (base 16). Il sistema numerico standard è chiamato decimale (base 10) e utilizza dieci simboli: 0,1,2,3,4,5,6,7,8,9. L'esadecimale utilizza i numeri decimali e sei simboli supplementari. Non ci sono simboli numerici che rappresentano valori superiori a nove, quindi si usano lettere tratte dall'alfabeto inglese, in particolare A, B, C, C, D, E e F. Esadecimale A = decimale 10, ed esadecimale F = decimale 15.
Gli esseri umani usano per lo più il sistema decimale. Questo probabilmente perché gli umani hanno dieci dita sulle mani. I computer, tuttavia, hanno solo on e off, chiamato una cifra binaria (o bit, in breve). Un numero binario è solo una stringa di zeri e uno: 11011011, per esempio. Per comodità, gli ingegneri che lavorano con i computer tendono a raggruppare i bit. Nei primi tempi, come negli anni '60, raggruppavano 3 bit alla volta (proprio come i grandi numeri decimali sono raggruppati in tre, come il numero 123.456.789). Tre bit, ognuno dei quali è acceso o spento, possono rappresentare gli otto numeri da 0 a 7: 000 = 0; 001 = 1; 010 = 2; 011 = 3; 100 = 4; 101 = 5; 110 = 6 e 111 = 7. Questo è chiamato ottale.
Con l'aumento delle dimensioni dei computer, era più conveniente raggruppare i bit per quattro invece che per tre. Questo raddoppia i numeri che il simbolo rappresenterebbe; può avere 16 valori invece di otto. Esadecimale = 6 e decimale = 10, quindi si chiama esadecimale. Nel gergo del computer quattro bit fanno un morso (a volte si scrive nybble). Un nibble è una cifra esadecimale, scritta con il simbolo 0-9 o A-F. Due spuntini fanno un byte (8 bit). La maggior parte delle operazioni al computer utilizza il byte, o un multiplo del byte (16 bit, 24, 32, 64, ecc.). L'esadecimale rende più facile scrivere questi grandi numeri binari.
Per evitare confusione con i sistemi di numerazione decimale, ottale o altri sistemi di numerazione, i numeri esadecimali sono talvolta scritti con una "h" dopo o "0x" prima del numero. Ad esempio, 63h e 0x63 significano 63 esadecimali.