Osmičková soustava
Author
Albert FloresOsmičková (oktalová, oktální) soustava je číselná soustava o základu 8, která (v tradičním zápisu) může obsahovat cifry 0, 1, 2, 3, 4, 5, 6 a 7.
Díky tomu, že je oktální soustava snadno převeditelná do binární soustavy (8 je mocninou dvojky), často se používala v oblasti informatiky. Příkladem může být nastavení přístupových práv v operačních systémech unixového typu.
Převody čísel
Převod z desítkové do osmičkové soustavy
Metoda postupného dělení 8 je používána pro převod celých čísel v desítkové soustavě do soustavy osmičkové a spočívá v postupném dělení číslem 8. Původní číslo celočíselně vydělíme číslem 8 a zvlášť si zapisujeme zbytky po tomto dělení - označme je jako Zb_i, kde i značí pořadí zbytku. +more Vzniklý podíl dále dělíme číslem 8 (a zapisujeme si zbytky po dělení) dokud podíl není roven nule. Po skončení dělení dostaneme číslo v osmičkové soustavě zapsáním pořadí zbytků v opačném pořadí (protože číslo zapisujeme zprava doleva, ale čteme zleva doprava).
Například: Mějme číslo 900 v desítkové soustavě, které chceme převést do osmičkové soustavy. Nechť symbol div znamená celočíselné dělení.
900 div 8 = 112 a Zb_0 = 4
112 div 8 = 14 a Zb_1 = 0
14 div 8 = 1 a Zb_2 = 6
1 div 8 = 0 a Zb_3 = 1
Zbytky po dělení zapisujeme zprava doleva - avšak číslo čteme zleva doprava. (Pořadí zbytků po dělení je 4, 0, 6, 1 ale zapisujeme je v pořadí 1, 6, 0, 4)
Výsledkem je: (900)10 = (1604)8
Vybrané zlomky v osmičkové soustavě
:(1/2)10 = (0,4)8 :(1/4)10 = (0,2)8 :(1/8)10 = (0,1)8 :(1/10)10 = (0,06341634163416341...)8 :(1/16)10 = (0,04)8 :(1/20)10 = (0,0314631463146...)8
Převod z osmičkové do desítkové soustavy
Převod z osmičkové soustavy do desítkové je konkrétním použitím obecného vztahu \sum_{i=0}^n \left( a_i\times B^i \right).
Například: Mějme číslo 2007 v osmičkové soustavě, které chceme převést do soustavy desítkové. Úpravou obecného vztahu do podoby \sum_{i=0}^n \left( a_i\times 8^i \right) získáváme efektivní nástroj pro převod. +more (Opět pamatujme že číslo je zapsáno zprava doleva).
\sum_{i=0}^n \left( a_i\times 8^i \right) = 7 \times 8^0 + 0 \times 8^1 + 0 \times 8^2 + 2 \times 8^3 = 1031
Výsledkem je: (2007)8 = (1031)10
Převod z osmičkové do binární soustavy
Převod mezi těmito soustavami je značně ulehčen díky tomu, že číslo 8 je mocninou dvojky. Jednoduše nahradíme každou číslici za její binární reprezentaci. +more Pro převod můžeme s výhodou použít následující tabulky:.
align = "center" |Osmičková číslice | align = "center" |0 | align = "center" |1 | align = "center" |2 | align = "center" |3 | align = "center" |4 | align = "center" |5 | align = "center" |6 | align = "center" |7 |
---|---|---|---|---|---|---|---|---|
align = "center" |Binární reprezentace | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
Například: Převod čísla (1572)8 do dvojkové (binární) soustavy.
1 = 001
5 = 101
7 = 111
2 = 010
Výsledkem je: (1572)8 = (001101111010)2
Převod z binární do osmičkové soustavy
Převod je opět poměrně jednoduchý - zápis čísla v binární soustavě rozdělíme na skupiny po 3 bitech a pomocí předchozí tabulky převedeme na číslo v osmičkové soustavě.
Například: Převod čísla (011 111 011 000)2 do osmičkové soustavy.
011 = 3
111 = 7
011 = 3
000 = 0
Výsledkem je: (011 111 011 000)2 = (3730)8
Převod z osmičkové do hexadecimální soustavy
Převod mezi těmito dvěma soustavami je řešen pomocí 2 kroků. V prvním kroku převedeme číslo v osmičkové soustavě do soustavy binární, které ve druhém kroku převedeme do soustavy hexadecimální.
Převod z hexadecimální do osmičkové soustavy
Tento převod je také řešen pomocí 2 kroků, kdy v prvním kroku převedeme číslo v hexadecimální soustavě do soustavy binární a následně provedeme převod z binární do osmičkové soustavy.
Srovnání číselných soustav
Odkazy
Související články
Binární soustava * Desítková soustava * Hexadecimální soustava