Użycie adresu MAC jest jednym z najważniejszych aspektów technologii Ethernet. Adresy MAC używają liczb szesnastkowych.

Używając słowa szesnastkowy możemy mówić o systemie numerycznym. Natomiast używając słowa szesnastkowo mówimy, że dana wartość jest zapisana w systemie szesnastkowym. Zapis szesnastkowy zapewnia wygodny sposób reprezentowania wartości binarnych. Tak jak w systemie dziesiętnym podstawą systemu liczbowego jest liczba 10, w binarnym - liczba 2 to w szesnastkowym - liczba 16.

System szesnastkowy do zapisu liczb używa cyfr od 0 do 9 i liter od A do F. Rys. 1 przedstawia odpowiednik dziesiętny i szesnastkowy dla wartości binarnych od 0000 do 1111. Znacznie łatwiej jest przedstawić wartość jako pojedynczą cyfrę szesnastkową niż jako cztery bity.

Przyjęto, że 8 bitów (bajt) jest powszechnie stosowanym sposobem grupowania liczb binarnych. Binarne liczby od 00000000 do 11111111 mogą być reprezentowane przez szesnastkowe liczby z przedziału od 00 do FF. W przypadku mniejszych wartości, w celu skompletowania 8-bitowej reprezentacji dodawane są wiodące zera. Na przykład, binarna wartość 0000 1010 jest pokazana szesnastkowo jako 0A.

Uwaga: Ważne jest aby rozróżniać wartości szesnastkowe od wartości dziesiętnych przedstawionych przy pomocy znaków od 0 do 9, tak jak to jest pokazane na rys. 1.

Reprezentacja wartości szesnastkowych

W tekście wartości szesnastkowe są poprzedzane przez 0x (np. 0x73) albo za liczbą szesnastkową podana jest liczba 16 w dolnym indeksie. Rzadziej stosowane jest użycie litery H na końcu liczby, np.73H. Jednakże, ponieważ indeks dolny nie jest rozpoznawany w linii poleceń lub środowiskach programistycznych, techniczna reprezentacja liczb heksadecymalnych jest poprzedzana symbolem "0x" (zero X). Dlatego powyższy przykład można przedstawić jako 0x0A i 0x73.

Liczby szesnastkowe są używane do reprezentacji Ethernetowych adresów MAC i adresów IP w wersji 6.

Zamiana liczb szesnastkowych

Istnieje możliwość bezpośredniej konwersji między systemem dziesiętnym i szesnastkowym, jednak szybkie dzielenie i mnożenie przez 16 nie jest zawsze wygodne. Jeśli taka konwersja jest wymagana, to zwykle łatwiej jest konwertować liczbę dziesiętną lub szesnastkową do postaci binarnej i następnie z tej postaci konwertować do docelowej postaci.

W praktyce możliwe jest rozpoznanie wzorców bitów binarnych, które pasują do wartości dziesiętnej i szesnastkowej. Rys. 2 przedstawia te wzory dla wybranych 8-mio bitowych wartości.