Co vlastně znamená „soustava“
Zápis čísla je dohoda o tom, co znamená pozice číslice. V desítkové soustavě znamená 1234 přesně 1·103 + 2·102 + 3·101 + 4·100 - každý krok doleva je desetkrát víc. Základ soustavy je to číslo, kterým se násobí; nic jiného se nemění. Ve dvojkové soustavě je základ 2, v šestnáctkové 16, a pravidlo zůstává stejné.
Z toho plyne i kolik je potřeba číslic: vždy přesně tolik, kolik je základ. Desítková má 0 až 9, dvojková jen 0 a 1, šestnáctková potřebuje šestnáct znaků - a protože jich deset arabských nestačí, doplní se písmeny A až F pro hodnoty 10 až 15. Písmena nejsou nic záhadného, jsou to jen číslice, na které se nedostalo.
Převod z desítkové: dělení se zbytkem
Číslo se opakovaně dělí základem cílové soustavy a zapisují se zbytky. Až vyjde podíl nula, přečtou se nasbírané zbytky zdola nahoru - a to je hledaný zápis. Pořadí je to jediné, na čem se dá u téhle metody chybovat, a chybuje se na něm často.
Proč to funguje: jedno dělení základem odloupne poslední číslici zápisu, přesně jako dělení deseti odloupne poslední číslici v desítkové soustavě. Zbytek je ta číslice, podíl je zbytek čísla.
Převod do desítkové: rozvoj podle mocnin
Opačný směr je ještě přímočařejší - každá číslice se vynásobí mocninou základu podle své pozice a všechno se sečte. Pozice se počítají zprava od nuly, takže poslední číslice se násobí základem na nultou, tedy jedničkou. U šestnáctkového 1A vyjde 1·161 + 10·160 = 26.
Dvojková a šestnáctková: převod bez počítání
Šestnáct je čtvrtá mocnina dvou, a to má jeden velmi praktický důsledek: jedna šestnáctková číslice odpovídá přesně čtyřem dvojkovým. Převod mezi těmito dvěma soustavami se proto nepočítá, jen se přeskupuje - binární zápis se zprava rozdělí po čtveřicích a každá čtveřice se nahradí jednou číslicí. Zleva se případně doplní nuly.
Právě kvůli tomu se šestnáctková soustava vůbec používá. Je to zkratka za dvojkovou, čtyřikrát kratší a pořád s ní přesně zarovnaná - proto se v ní píší barvy (#FF8800), adresy v paměti i otisky souborů. Osmičková soustava funguje stejně, jen po trojicích, protože osm je třetí mocnina dvou.
Desetinná část, a proč nemusí vyjít
Desetinná čísla se převádějí opačným postupem: desetinná část se opakovaně násobí základem a odebírá se celá část. Jenže zatímco celé číslo vyjde v každé soustavě přesně, desetinná část nemusí. Zlomek má v cílové soustavě konečný zápis jen tehdy, když prvočísla v jeho jmenovateli dělí i základ té soustavy.
Nejznámější příklad je 0,1. V desítkové soustavě je to jedna desetina, úhledné konečné číslo. Ve dvojkové je jmenovatel 10 = 2·5, jenže základ 2 tu pětku neobsahuje - a 0,1 se stává periodickým číslem, které nekonečně opakuje 0011. Proto počítač neumí uložit desetinu přesně a proto 0.1 + 0.2 nevyjde přesně 0.3. Převodník výše na takový případ upozorní, místo aby zaokrouhlený výsledek vydával za hodnotu.
Barvy RGB a kód HEX
Obrazovka skládá každou barvu ze tří světel: červeného, zeleného a modrého, odtud RGB (red, green, blue). Každé světlo má sílu od 0 do 255, tedy přesně jeden bajt. Černá je (0, 0, 0), všechno zhasnuté, bílá (255, 255, 255), všechno naplno. Světla se sčítají, takže červená a zelená dají žlutou (255, 255, 0), ne hnědou jako vodovky.
Kód barvy, jak ho znáte z grafických programů a webových stránek, je totéž v šestnáctkové soustavě. Každá složka se zapíše dvěma číslicemi a za sebe se dají s mřížkou na začátku: 255 je FF, 136 je 88 a 0 je 00, takže (255, 136, 0) je #FF8800, oranžová. Složka se převede dělením 16: podíl je první číslice, zbytek druhá. Zpátky se počítá první číslice krát 16 plus druhá, u C8 tedy 12 · 16 + 8 = 200. Zkrácený zápis #F80 jen zdvojí každou číslici.
Na co si dát pozor
Zbytky se čtou zdola nahoru, ne shora dolů. Číslice A až F mají hodnoty
10 až 15, ne 11 až 16. V zápisu nesmí být číslice, která je větší nebo
rovna základu - 182 není osmičkové číslo, protože osmička
v osmičkové soustavě neexistuje. A prefixy z programování
(0x pro šestnáctkovou, 0b pro dvojkovou)
k číslu nepatří, jsou jen značka; převodník výše je sní, ale v sešitě je
nechte být.
Slovensky
Číselné sústavy, dvojková sústava, šestnástková sústava, desiatková sústava, osmičková sústava, základ sústavy, zvyšok po delení, farby RGB, kód farby. Počítá se stejně.
Kde si o tom přečíst víc
Téma podrobněji rozebírá článek Převody soustav.