Šestnáctková soustava je číselná soustava, která se často používá v informatice a digitální elektronice. Často se zkracuje na „hex“. Jedná se o soustavu o základu 16, což znamená, že čísla jsou reprezentována 16 různými symboly. Šestnáctková soustava je reprezentována čísly 0 až 9 a písmeny A až F, kde A znamená 10, B 11 atd. Funkcí šestnáctkové soustavy, její jednoduchostí, způsobem zápisu čísel v šestnáctkové soustavě, pravidly, kterými se řídí její používání, a důvodem, proč je 255 v šestnáctkové soustavě reprezentováno jako FF, se zabývá tento článek.
Velká binární čísla lze pohodlně reprezentovat pomocí šestnáctkové číselné soustavy, protože umožňuje srozumitelnější a kompaktnější reprezentaci. Je to dáno tím, že každá číslice ve dvojkové soustavě představuje pouze jeden bit, zatímco každá číslice v šestnáctkové soustavě představuje čtyři bity. Například šestnáctkové číslo DB lze použít k reprezentaci binárního čísla 11011011, kde D znamená 13 a B 11. Použití hexadecimálního zápisu usnadňuje lidem práci s binárními čísly a jejich pochopení.
Na přímočarém příkladu si ukážeme, jak hexadecimální zápis funguje. Naše každodenní používání desítkové číselné soustavy je soustava se základem 10, která používá deset různých symbolů (0-9) k reprezentaci čísel. Oproti tomu šestnáctková soustava používá šestnáct symbolů (0-9 a A-F). Hodnota hexadecimálního čísla je definována umístěním každé číslice zprava doleva, přičemž nejpravější číslice představuje místo jedniček, další číslice šestnáctky, další 256 atd.
Před zápisem čísla 16 v šestnáctkové soustavě musíme zjistit hodnotu každé číslice. Protože pro vyjádření čísla 16 lze použít mocninu 16, zapíšeme 16 jako 10, neboli 10. Místo jedniček je reprezentováno číslicí 0 a místo šestnáctek číslicí 1. Proto je 16 v šestnáctkové soustavě reprezentováno jako 10.
Šestnáctková soustava má jednoduché pravidlo: každá číslice může představovat číslo mezi 0 a 15. Následující hodnotu vyjádříme tak, že po dosažení hodnoty 15 přidáme další číslici, která je reprezentována písmenem F. Například šestnáctková reprezentace čísla 17 je 11, kde 1 znamená místo jedniček a 1 místo šestnáctek.
Nyní probereme důvod, proč se číslo 255 zapisuje v šestnáctkové soustavě jako FF. F má v šestnáctkové soustavě hodnotu 15. V šestnáctkové soustavě znamená každé číslo čtyři bity, proto dvě číslice mohou představovat 8bitový bajt. Osm bitů může obsahovat maximálně hodnotu 255 v desítkové soustavě nebo 11111111 ve dvojkové soustavě. Tato nejvyšší hodnota se označuje hexadecimálním kódem FF, kde F znamená 15. Výsledkem je, že hexadecimální reprezentace 255 je FF.
Souhrnně řečeno, číselná soustava o základu 16 známá jako šestnáctková používá k reprezentaci celých čísel písmena A-F a číslice 0-9. Díky svému minimalismu a čitelnosti při kódování binárních celých čísel se často používá v informatice a digitální elektronice. Každá číslice v šestnáctkové soustavě může mít hodnotu mezi 0 a 15 podle jednoduchého pravidla. 255 v desítkové soustavě, která je v šestnáctkové soustavě reprezentována jako FF, je nejvyšší hodnota, kterou lze vyjádřit dvěma šestnáctkovými číslicemi. Každý, kdo se zabývá počítači nebo digitálními systémy, musí znát fungování šestnáctkové soustavy.
Desetinné číslice pro číslice 0 až 9 se v šestnáctkové soustavě používají k jejich vyjádření. Číslice 10 až 15 jsou však v šestnáctkové soustavě reprezentovány písmeny A až F. Děje se tak z důvodu zachování konzistence a předcházení záměnám. V šestnáctkové soustavě písmeno A zastupuje například číslo 10.
Abyste mohli počítat šestnáctková čísla, musíte rozumět číselné soustavě o základu 16. Šestnáct číslic v šestnáctkovém čísle je 0 až 9 pro hodnoty 0 až 9 a A až F pro hodnoty 10-15.
Ke změně desítkové hodnoty na šestnáctkovou lze použít metodu opakovaného dělení. Zde je podrobný návod: Desetinné číslo, které chcete převést, je na prvním místě.
2. Vypočítejte zbytek vynásobením částky číslem 16. 3. Opět dělením 16 zapište zbytek kvocientu z předchozího kroku.
Krok 3 opakujte tak dlouho, dokud nebude kvocient roven nule.
5. Chcete-li získat hexadecimální ekvivalent všech zbytků, vypište je v opačném pořadí.
Pro ilustraci změňme desítkovou hodnotu 255 na šestnáctkovou:
255 16 = 15 (F v šestnáctkové soustavě) jako zbývající číslo.
15 16 = 0 zbývajících 15 (hexadecimální hodnota F)
FF je tedy hexadecimální ekvivalent 255.
Pro změnu celého čísla v šestnáctkové soustavě zpět na číslo v desítkové soustavě použijte poziční zápis. Celé číslo v šestnáctkové soustavě je reprezentováno každou číslicí jako mocnina 16. Shrňte výsledky vynásobení každé číslice příslušnou mocninou 16.
Pro ilustraci změňme šestnáctkové číslo 1A7 na desítkové:
1 * 16^2 + A * 16^1 + 7 * 16^0
= 1 * 256 + 10 * 16 + 7 * 1
= 256 + 160 + 7
= 423
423 je tedy desítková reprezentace čísla 1A7.
Při dekódování hexadecimálního kódu byste měli dodržovat jednoduchý postup. V hexadecimálním čísle odpovídá každá číslice čtyřem bitům. Prvním krokem je převedení každé šestnáctkové číslice na její čtyřbitový binární protějšek. Po převedení všech číslic do binární podoby je můžete zkombinovat a získat dekódovanou hodnotu.