Projekt: Inovace oboru Mechatronik pro Zlínský kraj Registrační číslo: CZ..7/..8/3.9 Číselné soustavy Použitá literatura: Kantnerová, I.: Sbírka příkladů z číslicové techniky, IDEA SERVIS, Praha 2 http://programujte.com http://cs.wikipedia.org http://www.sposs.cz http://whatsayyouvanilla.blogspot.com http://www.instructables.com http://technet.microsoft.com http://www.converter.cz/baster/popis.htm Zpracoval: Ing. Bc. Miloslav Otýpka
Číselné soustavy Číselná soustava je způsob reprezentace čísel. Podle způsobu určení hodnoty čísla z dané reprezentace rozlišujeme dva hlavní druhy číselných soustav: poziční číselné soustavy nepoziční číselné soustavy Dnes se nejvíce používají soustavy poziční. Čísla dané soustavy se skládají z uspořádané množiny symbolů, které se nazývají číslice. Poziční soustavy jsou charakterizovány tzv. základem neboli bází (anglicky radix - r), což je obvykle kladné celé číslo definující maximální počet číslic, které jsou v dané soustavě k dispozici. Mezi nejčastěji používané poziční číselné soustavy patří: jedničková (unární, r =) - soustavu běžně používáme při počítání na prstech nebo účtující číšník při psaní čárek na účtence zobrazující počet piv dvojková (binární, r = 2) digitální elektronické obvody, logické členy, počítače osmičková (oktální, oktalová, r = 8) desítková (decimální, dekadická, r = ) nejpoužívanější v běžném životě dvanáctková (r = 2) málo používaná šestnáctková (hexadecimální, r = 6) známá v oblasti informatiky, pro číslice až 5 se používají písmena A až F šedesátková (r = 6) používá se k měření času a číslice se zapisují desítkovou soustavou jako až 59 a řády se oddělují dvojtečkou Každé číslo vyjádřené v poziční soustavě může mít část: celočíselnou desetinnou Tyto části jsou odděleny desetinnou čárkou. V anglosaských zemích je místo desetinné čárky užívána desetinná tečka. Poziční soustavy se nazývají také polyadické, což značí vlastnost, že číslo v nich zapsané lze vyjádřit součtem mocnin základu dané soustavy vynásobených příslušnými platnými číslicemi. 2
Pro číslicovou techniku je desítková soustava nevhodná a proto zde používáme dvouhodnotovou (dvojkovou) číselnou soustavu.. Desítková soustava V desítkové soustavě zapisujeme čísla pomocí deseti základních číslic -,, 2, 3, 4, 5, 6, 7, 8, 9. Hodnota každé číslice je určena pozicí v zápise čísla. Desítkové číslo můžeme rozepsat. 2532 = 2 + 5 + + 3 + 2 = 2. 4 + 5. 3 +. 2 + 3. + 2. Ze zápisu vyplývá, že jednotlivé číslice se násobí odpovídajícími pozičními váhami, které jsou mocninou deseti. Váhy jsou rozděleny následovně. Jednotky Řád = Desítky Řád = Stovky Řád 2 2 = Tisíce Řád 3 3 = Desetitisíce Řád 4 4 = atd. Řád 5 5 = Čísla jsou řazena zprava doleva - vpravo je číslice s nejmenší vahou a číslice zcela vlevo je číslice s největší vahou. V desítkové soustavě dále platí, že deset jednotek nižšího řádu tvoří jednu jednotku nejblíže vyššího řádu. Pomocí mocninného rozvoje lze zapsat i desetinná čísla a to pomocí mocnin záporných hodnot.,35 =. - + 3. -2 + 5. -3 2. Dvojková soustava Ve dvojkové číselné soustavě můžeme zobrazit také libovolnou číselnou hodnotu a přitom využijeme pouze dvě číslice ( a ). Čísla dvojkové soustavy (stejně jako v desítkové soustavě) násobíme určitou váhou podle jejich pozice. Protože pracujeme ve dvojkové (binární) soustavě, bude váha mocnina čísla 2. Dvojkové číslo můžeme rozepsat. D =.2 5 +.2 4 +.2 3 +.2 2 +.2 +.2 Pomocí mocninného rozvoje můžeme vyjádřit i čísla desetinná., D =.2 - +.2-2 +.2-3 Číslice je symbol nebo skupina symbolů představující číslo. 3
Zápis čísla v binární soustavě oproti zápisu v soustavě desítkové je podstatně delší. Pokud chceme zápis zkrátit, můžeme použít soustavu osmičkovou (oktalovou) - základ z = 8, nebo soustavu šestnáctkovou (hexadecimální) - základ z = 6. 3. Osmičková soustava Osmičková (oktalová) soustava obsahuje cifry,, 2, 3, 4, 5, 6, 7. Obdobně jako dvojková soustava využívá principu mocnin, ale tentokráte čísla 8. Oktalová soustava je snadno převeditelná do binární soustavy (8 je mocninou 2) a proto se často používá v oblasti informatiky. Příkladem může být nastavení přístupových práv v operačních systémech unixového typu. Rozepíšeme čísla 46 O a 6,335 O do mocninné řady. 46 O =.8 2 + 4.8 + 6.8 6,335 O = 6.8 + 3.8 - + 3.8-2 + 5.8-3 4. Šestnáctková soustava Šestnáctková (hexadecimální) číselná soustava je soustava o základu šestnáct. Jednotlivá čísla jsou zde tvořena číslicemi,, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. V šestnáctkové soustavě tvoří číslice i prvních šest velkých písmen abecedy. Přičemž A=, B=, C=2, D=3, E=4, F=5. Rozepíšeme čísla A5C H a B2,F H do mocninné řady. A5C H = A.6 2 + 5.6 + C.6 =.6 2 + 5.6 + 2.6 B2,F H = B.6 + 2.6 +.6 - +.6-2 + F.6-3 =.6 + 2.6 +.6 - +.6-2 + 5.6-3 Díky jednoduchému vzájemnému převodu mezi šestnáctkovou a dvojkovou soustavou, se hexadecimální zápis čísel často používá v oblasti informatiky, například pro adresy v operační paměti počítače. 4
5. Převod soustavy dvojkové, osmičkové a šestnáctkové do soustavy desítkové - dekódování Číslo vyjádřené v některé z pozičních soustav převedeme do soustavy desítkové tak, že sečteme hodnoty mocninného rozvoje - provedeme tzv. váhový součet. n A = a. z z m i i A z - převáděné číslo z - základ soustavy, ze které převádíme i - pozice číslice, číslováno od zprava do leva -m - hodnota pozice nejvíce vpravo n - hodnota pozice nejvíce vlevo a i - hodnota číslice na dané pozici z i - váha číslice na dané pozici Příklad Převeďte binární číslo B do soustavy desítkové. Použijeme mocniny čísla 2..2 6 +.2 5 +.2 4 +.2 3 +.2 2 +.2 +.2 = 64 + 32 + + 8 + 4 + + = 9 D Příklad 2 Převeďte binární číslo, B do soustavy desítkové. Opět použijeme mocniny (kladné i záporné) čísla 2..2 +.2 +.2 - +.2-2 +.2-3 = 2 + + + ¼ + /8 = 3,375 D 5
Příklad 3 Převeďte osmičkové číslo 26 O do soustavy desítkové. Použijeme mocniny čísla 8. 2.8 2 +.8 + 6.8 = 28 + 8 + 6 = 42 D Příklad 4 Převeďte osmičkové číslo,32 O do soustavy desítkové. Použijeme mocniny čísla 8..8 + 3.8 - + 2.8-2 = + 3./8 + 2./8 2 = 3/8 + 2/64 = 2/32 + /32 = 3/32 =,4625 D Příklad 5 Převeďte šestnáctkové číslo BF H do soustavy desítkové. Použijeme mocniny čísla 6..6 2 +.6 + 5.6 = 286 + 6 + 5 = 2847 D Příklad 6 Převeďte šestnáctkové číslo 3,A H do soustavy desítkové. Použijeme mocniny čísla 6. 3.6 +.6 - +.6-2 = 3 + +./6 2 = 3 + /256 = 3,39625 D 6. Převod soustavy desítkové do soustavy dvojkové, osmičkové a šestnáctkové - kódování Dekadické číslo rozdělíme na celou část a desetinnou část a převody provádíme samostatně. a) Celá část Celou část dělíme základem soustavy do které převádíme a současně sepisujeme zbytky po dělení. Vzestupný zápis těchto zbytků je výsledek. Odčítáme nejvyšší mocniny základu od daného čísla. Všechny mocniny zapíšeme sestupně od nejvyšší, kterou jsme odčítali, až po nejnižší možnou, včetně těch, které se neuplatní (u těchto mocnin píšeme ). b) Desetinná část 6
Příklad U desetinné části převod provádíme postupným násobením desetinného čísla základem soustavy (do které převádíme), a sepisováním čísel před desetinnou čárkou. Sestupný zápis těchto čísel je výsledek. Převeďte dekadické číslo 83 D do soustavy binární pomocí dělení. zbytek 8 3 : 2 = 9 9 : 2 = 4 5 45 : 2 = 2 2 22 : 2 = : 2 = 5 5 : 2 = 2 2 : 2 = : 2 = 83 D = B Příklad 2 Převeďte dekadické číslo 83 D do soustavy osmičkové pomocí dělení. zbytek 8 3 : 8 = 2 2 7 22 : 8 = 2 6 2 : 8 = 2 83 D = 267 O Příklad 3 Převeďte dekadické číslo 83 D do soustavy šestnáctkové pomocí dělení. 7
8 3 : 6 : 6 odčítání. Výhodou šestnáctkové soustavy oproti desítkové je kratší zápis. Příklad 4 Převeďte dekadické číslo 4 D do soustavy binární pomocí Nejvyšší mocnina, kterou lze od čísla 4 odečíst je 2 5 = 32. Zapíšeme jako.2 5 a odečteme: 4-2 5 = 4-32 = 9 Čtvrtá mocnina 2 4 = 6 se do 9 nevejde - zapíšeme.2 4. 9-2 3 = 9-8 = Druhá ani první mocnina se do nevejde - zapíšeme.2 2 a.2. - 2 = - = = zbytek 7 = (B) 83 D = B7 H 4 D =.2 5 +.2 4 +.2 3 +.2 2 +.2 +.2 = B Příklad 5 Převeďte dekadické číslo 57 D do soustavy binární pomocí odčítání. 57 D =.2 7 +.2 6 +.2 5 +.2 4 +.2 3 +.2 2 +.2 +.2 = B 57-2 7 = 57-28 = 29 29-2 4 = 29-6 = 3 3-2 3 = 3-8 = 5 5-2 2 = 5-4 = - 2 = - = Příklad 6 Převeďte dekadické desetinné číslo,625 D do soustavy binární pomocí násobení. celá část,62 5. 2 =,2 5,25. 2 =,5,5. 2 =,,625 D =, B 8
7. Převod soustavy dvojkové do soustavy osmičkové a šestnáctkové Osmičkovou a šestnáctkovou soustavu využíváme v číslicové technice především pro zkrácení zápisu binárního čísla. Převod mezi těmito soustavami je častý a jednoduchý. Při převodu do osmičkové soustavy: binární číslo rozdělíme zprava do trojic a každá trojice se vyjádří vlastním váhovým součtem váhy na třech bitech jsou 4 (2 2 ), 2 (2 ), (2 ) Při převodu do šestnáctkové soustavy: binární číslo rozdělíme zprava do čtveřic a každá čtveřice se vyjádří vlastním váhovým součtem váhy na čtyřech bitech jsou 8 (2 3 ), 4 (2 2 ), 2 (2 ), (2 ) Příklad Převeďte binární číslo B do soustavy osmičkové. 6 3 5 2 B = 635 O Příklad 2 Převeďte osmičkové číslo 6472 O do soustavy binární. 6 4 7 2 6472 O = B 2 Pokud vlevo nevyjde trojice, doplníme volné pozice nulami. 9
Příklad 3 Převeďte binární číslo B do soustavy šestnáctkové. 3 9 3(D) 3 B = 39D H Příklad 4 Převeďte šestnáctkové číslo 6EAC H do soustavy binární. 6 E A C 6EAC H = B Příklad 5 Převeďte binární číslo, B do soustavy osmičkové. Pro desetinná čísla je převod obdobný, jen rozdělení na trojice (čtveřice) je zleva od desetinné čárky., 4, 7 2, B =,72 O Příklad 6 Převeďte binární číslo, B do soustavy šestnáctkové., 2(C), 4(E) 8 5, B = C,E8 H 3 Pokud vlevo nevyjde čtveřice, doplníme volné pozice nulami. 4 Pokud vpravo nevyjde trojice, doplníme volné pozice nulami. 5 Pokud nevyjde čtveřice, doplníme volné pozice nulami.
Shrnutí Každé číslo vyjádřené v poziční soustavě může mít část celočíselnou a část desetinnou. Tyto části jsou odděleny desetinnou čárkou. V anglosaských zemích je místo desetinné čárky užívána desetinná tečka. Poziční soustavy se nazývají také polyadické, což značí vlastnost, že číslo v nich zapsané lze vyjádřit součtem mocnin základu dané soustavy vynásobených příslušnými platnými číslicemi. Nepoziční soustava je soustava, která využívá jiný systém významu jednotlivých číslic v čísle (např. soustava římská - VIII, IX). Poziční soustava je soustava, kde záleží na pozici číslice v daném čísle. váha (důležitost) číslice je dána mocninou základu číselné soustavy mocnina vyjadřuje pozici číslice v čísle hodnota mocniny roste zprava doleva Obecný zápis čísla A v poziční soustavě se základem z: A z = a n. z n + a n-. z n- + + a. z + a. z + a -. z - + a -m. z -m číslo hodnotačísl ice váha soustavy základ soustavy mocnina Soustava desítková (dekadická) značena je indexem D nebo indexem základem soustavy je číslo obsahuje deset číslic, až 9 Soustava dvojková (binární) značena je indexem B nebo indexem 2 základem soustavy je číslo 2 obsahuje dvě číslice a Soustava osmičková (oktalová) značena je indexem O nebo indexem 8 základem soustavy je číslo 8 obsahuje osm číslic až 7 Soustava šestnáctková (hexadecimální) značena je indexem H nebo indexem 6 základem soustavy je číslo 6 obsahuje šestnáct znaků, číslice až 9 a písmena A, B, C, D, E a F Výhodou šestnáctkové soustavy oproti desítkové je kratší zápis a jednodušší převod do dvojkové (digitální) soustavy.
Kontrolní cvičení. Proveďte převod z desítkové do dvojkové soustavy. a) 5 D [ B ] b) 2 D [ B ] c) 235 D [ B ] d) 46,75 D [, B ] 2. Proveďte převod z desítkové do osmičkové soustavy. a) 333 D [55 O ] b) 9784 D [237 O ] c) 8 D [ O ] d) 777 D [4 O ] 3. Proveďte převod z desítkové do šestnáctkové soustavy. a) 333 D [4D H ] b) 5799 D [9D47 H ] c) D [A H ] d) D [2B67 H ] 4. Proveďte převod z dvojkové do desítkové soustavy. a) B [5 D ] b) B [45 D ] c) B [3 D ] d), B [56,9375 D ] 5. Proveďte převod z osmičkové do desítkové soustavy. a) 777 O [5 D ] b) 726 O [367 D ] c) 7 O [5 D ] d) 632 O [4 D ] 6. Proveďte převod ze šestnáctkové do desítkové soustavy. a) CC H [24 D ] b) FFFF H [65535 D ] c) D45 H [3397 D ] d) 2362 H [74594 D ] 7. Proveďte převod z dvojkové do šestnáctkové soustavy. a) B [83 H ] b) B [BE H ] c), B [,3 H ] d) B [F H ] 8. Proveďte převod z dvojkové do osmičkové soustavy. a) B [75 O ] b) B [5 O ] c), B [3, O ] d) B [37 O ] 9. Proveďte převod ze šestnáctkové do dvojkové soustavy. 2
a) CC H [ B ] b) FFFF H [ B ] c) 2A5F, H [, B ] d) 2362 H [ B ]. Proveďte převod z osmičkové do dvojkové soustavy. a) 777 O [ B ] b) 7 O [ B ] c) 3,45 O [, B ] d) 667 O [ B ]. Proveďte převod ze šestnáctkové do osmičkové soustavy. a) A4D [55 O ] b),38c2 [,64 O ] c) FFFF [77777 O ] d) ABCD [2575 O ] 2. Proveďte převod z osmičkové do šestnáctkové soustavy. a) 234 O [29C H ] b) 724,56 O [D4,B8 H ] c) 666 O [B6 H ] d) 88 O [ H ] - převod nelze uskutečnit - osmičková soustava používá pouze čísla až 7! 3