System szesnastkowy jest drugim obok binarnego (dwójkowego) pozycyjnym systemem liczbowym wykorzystywanym w informatyce. W tym systemie podstawą jest liczba 16, w związku z czym oprócz cyfr 0-9 używa się także znaków liter. Kolejnym literom alfabetu odpowiadają kolejne liczby.
A = 10
B = 11
C = 12
D = 13
E = 14
F = 15
Liczbę zapisaną w systemie szesnastkowym oznacza się dolnym indeksem \(16\).
Zamiana liczby zapisanej w systemie szesnastkowym na liczbę w systemie dziesiętnym odbywa się poprzez pomnożenie kolejnych znaków występujących w zapisie przez podstawę systemu (16) podniesioną do odpowiednich potęg (tj. od \(0\) do \(n-1\), gdzie \(n\) to liczba znaków, z których składa się liczba w systemie szesnastkowym; potęgi wpisujemy "od końca", tzn. ostatnia szesnastka dostaje zero, itd., aż do pierwszej szesnastki, którą podnosimy do potęgi \(n-1\)). Następnie znaki zamieniamy na liczby (jeśli pojawiły się wśród nich litery) a całość sumujemy.
Przykład:
\(2A3E _{16} =2 \cdot 16^3+A \cdot 16^2+3 \cdot 16^1+E \cdot 16^0 = 2 \cdot 4096 +10 \cdot 256+3 \cdot 16+14 \cdot 1 \)
\(= 8192+2560+48+14=10814 _{10} \)
Z kolei przejście w drugą stronę odbywa się poprzez wykonanie dzielenia liczby w systemie dziesiętnym przez 16 oraz zliczania występujących podczas tej procedury reszt z dzielenia.
\(10814 _{10} \) podzielone przez 16 to \(675\) oraz \(14\) reszty. \(675\) przy dzieleniu przez 16 da w wyniku \(42\) oraz reszty \(3\). Następnie dzielimy \(42\) otrzymując \(10\) reszty oraz wynik \(2\) - tego wyniku już nie podzielimy przez 16 w związku z czym \(2\) jest ostatnią resztą. Teraz zastępujemy liczby większe od 9 odpowiednimi symbolami (\(14=E\) oraz \(10=E\)) oraz odczytujemy reszty (patrząc od końca). Nasza liczba to \(2A3E _{16} \).