Hlavní obsah
Šestnáctková čísla
Binární čísla jsou pro počítače skvělým způsobem, jak mohou reprezentovat čísla. Pro lidi však tak skvělá nejsou – jsou hodně dlouhá a spočítat všechny a chvilku trvá. Když počítačoví vědci pracují s čísly, často používají buď desítkovou soustavu, nebo šestnáctkovou soustavu. Ano, další číselná soustava!
Číselné soustavy jsou si naštěstí více podobné, než odlišné, a nyní, když už ovládáš desítkovou a dvojkovou soustavu, bude ti ta šestnáctková snad dávat smysl.
V desítkové soustavě představuje každá číslice mocninu – jednotky, desítky atd. Číslo proto nazýváme základem desítkové soustavy.
V šestnáctkové soustavě představuje každá číslice mocninu .
Zde je ukázka toho, jak v šestnáctkové soustavě napočítat do 10: , , , , , , , , , .
Vypadá to docela povědomě, až na poslední "číslo" . V šestnáctkové soustavě musí každá číslice reprezentovat hodnoty - , ale desítková čísla - se nevejdou do jediné číslice. Jako řešení používá šestnáctková soustava k vyjádření čísel - písmena - .
Pojďme napočítat od 10 do 15: , , , , , . Zvláštní, ale funguje to!
Ve skutečnosti bylo během let předloženo mnoho různých návrhů pro to, jak reprezentovat hodnoty 10-15, ale - je řešením, které vyhrálo.
Pojďme se nyní podívat na větší čísla. Zde je desítkové číslo , které je v šestnáctkové soustavě vyjádřeno jako :
Toto číslo potřebuje k zápisu dvě číslice, kde pravá číslice představuje místo pro jednotky ( ) a levá číslice představuje místo pro šestnáctky ( ). Stejně jako jsme sčítali desítková a binární čísla, můžeme sečíst a uvidíme, že šestnáctkové se rovná desítkové hodnotě .
Pojďme si teď vyzkoušet číslo s písmenem. Zde je desítkové číslo , které je v šestnáctkové soustavě zastoupeno jako :
Pro porozumění zápisu si musíme nejprve vybavit, že představuje hodnotu . Uděláš to tak, že si na prstech ruky spočítáš písmena. Klidně to můžeš počítat i jiným způsobem, musíš si ale pamatovat, že je potřeba začít písmenem reprezentujícím číslo .
Pak to stejně jako předtím sečteme a uvidíme, že se rovná desítkové hodnotě .
Proč je základem 16?
V této chvíli tě možná zajímá, proč mají počítačoví vědci šestnáctkovou soustavu tak rádi. Jaký to má smysl používat soustavu, kde pro reprezentaci čísel používáme písmena? Malá odbočka do historie nám to osvětlí...
První počítače používaly 4 bitovou architekturu, což znamenalo, že zpracovávaly bity ve skupinách po 4. To je důvodem toho, proč dnes zapisujeme bity ve skupinách po 4, jako když píšeme pro reprezentaci desítkového čísla , přestože by stačilo napsat .
Jaké množství hodnot lze pomocí 4 bitů reprezentovat? Nejnižší hodnota je (všude , tedy ) a nejvyšší hodnota je (všude , tedy ), takže 4 bity mohou reprezentovat 16 jedinečných hodnot. Aha, tak tady máme to číslo 16!
Každá skupina 4 bitů ve dvojkové soustavě odpovídá jedné číslici v šestnáctkové soustavě. Díky tomu je převádět binární čísla na šestnáctková čísla opravdu snadné a pro počítače je to proto zcela přirozené.
Převod binárních čísel na šestnáctková
Pojďme si převodem binárních čísel na šestnáctková ověřit, jak dobře se binární a šestnáctková čísla snáší.
Začneme kratším binárním číslem:
Číslo je 4 bity dlouhé, což znamená, že odpovídá jedné šestnáctkové číslici. Na každém místě kromě místa pro dvojky je , takže se rovná desítkovému číslu . Desítková i šestnáctková soustava reprezentují čísla - stejným způsobem, takže je v šestnáctkové soustavě jednoduše .
Zkusme delší binární číslo:
Jedním z možných přístupů je zjistit, jaké desítkové číslo je dlouhým řetězcem čísel a reprezentováno a následně jej převést do šestnáctkové soustavy. Tento přístup by fungoval, ale pracovat s tak dlouhým číslem dá hodně práce.
Mnohem jednodušším přístupem je převést každou skupinu 4 bitů, postupně jednu po druhé.
Začneme se skupinou nejvíce vlevo , ta se rovná , desítkové číslo . Toto číslo je menší než , takže je v šestnáctkové soustavě jednoduše .
Další skupinou je , ta rovná se , desítková hodnota . Toto číslo se v šestnáctkové soustavě reprezentuje písmenem .
Další skupinou je , ta se rovná , desítková hodnota . Toto číslo se v šestnáctkové soustavě reprezentuje jako .
Poslední skupinou je , ta se rovná , desítková hodnota . Toto číslo se v šestnáctkové soustavě reprezentuje písmenem .
Náš konečný šestnáctkový výsledek je . Tento převod jsme provedli, aniž bychom věděli, jaké desítkové číslo je reprezentováno. Nyní ti prozradíme, že a se rovnají desítkovému číslu . Je to neuvěřitelně velké číslo, takže jsme rádi, že se nám ho povedlo převést jednu číslici po druhé.
Vzorce šestnáctkových čísel
Pojďme teď uchopit šestnáctkovou soustavu trochu intuitivněji.
Zaprvé: jak bude pro daný počet číslic vypadat jejich největší možné číslo? V desítkové soustavě jsou to samé , jako je . Ve dvojkové soustavě jsou to samé , jako je .
V šestnáctkové soustavě bude každá číslice obsahovat , . Když takovéto číslo uvidíme, víme, že pro daný počet číslic představuje nejvyšší možnou hodnotu. K reprezentaci vyššího čísla bychom potřebovali více číslic.
Jak velké číslo lze tedy takto reprezentovat? Můžeme použít stejné pravidlo, které jsme použili u binárních čísel: největší číslo, které lze reprezentovat počtem číslic je stejné jako . Když teď máme místo základu 2 základ 16, možná k tomu budeme potřebovat kalkulačku.
Zde je tabulka prvních čtyř největších hodnot:
Počet číslic | Největší šestnáctkové číslo | Desítkový ekvivalent |
---|---|---|
1 | ||
2 | ||
3 | ||
4 |
Použití šestnáctkové soustavy
V této sekci o fungování počítačů budeme pracovat převážně s binárními čísly. Je však důležité pochopit také šestnáctkovou soustavu, protože se bude během pozdějších lekcí objevovat a každý programátor by ji měl znát.
Jako příklad ze života uvedeme, že šestnáctkovou soustavu používají weboví vývojáři pro reprezentaci barev. Barvy popisujeme jako kombinaci tří složek: červené, zelené a modré. Každá z těchto složek se může pohybovat od do . Barva jako modrá může být napsána jako unikátních barev — více než 16 milionů barev!
rgb(0, 0, 255)
nebo výstižnější šestnáctková verze, #0000FF
. Pomocí tohoto značení můžeme popsat Nyní, když už znáš šestnáctková čísla, zkus jim věnovat větší pozornost. Často je uvidíš zapsané s
0x
na začátku, jako je 0x4F
, nebo možná rozpoznáš jejich odlišnou kombinaci čísel 0-9
s A-F
. Pokud na ně někde narazíš, určitě se se svým objevem poděl v sekci Tipy & Poděkování.🙋🏽🙋🏻♀️🙋🏿♂️Máš k tomuto tématu nějaké dotazy? Rádi ti je zodpovíme — zeptej se v sekci pro dotazy níže!
Chceš se zapojit do diskuze?
Zatím žádné příspěvky.