Číslo projektu Číslo materiálu Název školy Autor Tematická oblast Ročník CZ.1.07/1.5.00/34.0581 VY_32_INOVACE_CTE_2.MA_03_Převod čísel mezi jednotlivými číselnými soustavami Střední odborná škola a Střední odborné učiliště, Dubno Ing. Miroslav Krýdl ČÍSLICOVÁ TECHNIKA druhý Datum tvorby Srpen 2012 Anotace Tematický celek je zaměřen na problematiku základů číslicové techniky. Prezentace je určena žákům 2.ročníku, slouží jako doplněk učiva. Pokud není uvedeno jinak, použitý materiál je z vlastních zdrojů autora
Převod čísel mezi jednotlivými číselnými soustavami
Převod celých dekadických čísel na binární Pro vyjádření převodu celého dekadického čísla je základní metodou převodu dělení určeného dekadického čísla základem binární soustavy. Po provedení dělení základem binární soustavy zapíšeme výsledek dělení tak, že dělíme na celá dekadická čísla a zároveň musíme zjistit, jaký je zbytek po operaci dělení. Hodnota zbytku může být 0 nebo 1. V dalším kroku se tento postup opakuje tak, že se dělí základem soustavy předchozí výsledek. Opět zapíšeme výsledek zaokrouhlený na celé dekadické číslo a hodnotu zbytku. Takto postupujeme až do toho stavu, kdy výsledek dělení základem soustavy bude hodnota 0. Zapíšeme hodnotu všech zbytků a provedeme zápis výsledku v binární hodnotě. Při převodu musíme správně provést zápis binárního čísla, proto je potřeba znát pozici nejnižšího platného bitu LSB (Least Significant Bit) a pozici nejvyššího platného bitu MSB (Most Significant Bit).
Zvolené dekadické číslo = 328 Základ binární soustavy = 2 Celočíselný výsledek Zbytek MSB = Most Significant Bit bit s nejvyšším řádem LSB = Least Significant Bit bit s nejnižším řádem 328 : 2 = 164 0 164 : 2 = 82 0 82 : 2 = 41 0 41 : 2 = 20 1 20 : 2 = 10 0 10 : 2 = 5 0 5 : 2 = 2 1 2 : 2 = 1 0 1 : 2 = 0 1 LSB MSB Zápis dekadického čísla 328 (10) na binární = 1 0 1 0 0 1 0 0 0 B Řády binární soustavy - 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 Číselné vyjádření jednotlivých řádů - 256 0 64 0 0 8 0 0 0 Zvolené dekadické číslo 328 (10) při převodu na číslo binární má tuto hodnotu 1 0 1 0 0 1 0 0 0 B.
Převod desetinných dekadických čísel na binární Pro vyjádření převodu desetinného dekadického čísla je základní metodou převodu násobení určeného desetinného dekadického čísla základem binární soustavy. Po provedení vynásobení základem binární soustavy zapíšeme výsledek násobení. Nyní mohou nastat dvě možnosti. a) Výsledek je větší než 1. Do zápisu jednotek se zaznamená hodnota 1. Do zápisu zbytku > 1 se zapíše desetinný zbytek. V dalším kroku se tento desetinný zbytek sepíše a násobí se základem soustavy. b) Výsledek je menší než 1. Do zápisu jednotek se zaznamená hodnota 0. Do zápisu zbytku > 1 se nezapíše žádná hodnota. V dalším kroku se hodnota výsledku sepíše a násobí se základem soustavy. Nyní se opět zjišťuje hodnota výsledku. Zapíšeme výsledek a postupuje se podle bodu a) nebo b). Takto postupujeme až do toho stavu, kdy výsledek násobení základem soustavy bude hodnota 0. Zapíšeme hodnotu všech jednotek a provedeme zápis převodu v binární hodnotě. Převádí-li se desetinná dekadická čísla mohou nastat následující možnosti: I) úplné vyjádření zbytku, hodnota zbytku se rovná 0 II) neúplné vyjádření zbytku, hodnota zbytku se nerovná 0 Při převodu musíme správně provést zápis binárního čísla, proto je potřeba znát pozici nejnižšího platného bitu LSB (Least Significant Bit) a pozici nejvyššího platného bitu MSB (Most Significant Bit).
ad I) převod desetinného čísla na binární - hodnota zbytku se rovná 0 Zvolené dekadické číslo = 0,625 Základ binární soustavy = 2 Výsledek Zbytek > 1 Zápis jednot ek 0,625. 2 = 1,25 0,25 1 MSB 0,25. 2 = 0,5 0 0,5. 2 = 1,00 0,00 1 LSB Zápis dekadického čísla 0,625 (10) na binární = 0, 1 0 1 B Řády binární soustavy - 2-1 2-2 2-3 Číselné vyjádření jednotlivých řádů - 0 0,5 0 0,125 Zvolené dekadické číslo 0,625 (10) při převodu na číslo binární má tuto hodnotu 0, 1 0 1 B.
ad II) převod desetinného čísla na binární - hodnota zbytku se nerovná 0 Zvolené dekadické číslo = 0,4 Základ binární soustavy = 2 Výsledek Zbytek > 1 Zápis jednotek 0,4. 2 = 0,8 0 0,8. 2 = 1,6 0,6 1 0,6. 2 = 1,2 0,2 1 0,2. 2 = 0,4 0 0,4. 2 = 0,8 0 0,8. 2 = 1,6 0,6 1 MSB LSB Zápis dekadického čísla 0,4 (10) na binární = 0, 0 1 1 0 0 1 B Řády binární soustavy - 2-1 2-2 2-3 2-4 2-5 2-6 Číselné vyjádření jednotlivých řádů - 0 0 0,25 0,125 0 0 0,015625 Zvolené dekadické číslo 0,4 (10) při převodu na číslo binární má tuto hodnotu 0, 0 1 1 0 0 1 B. Takto vyjádřené binární číslo je neúplné, neboť se při vyjádření zbytku, nikdy nedojde k hodnotě 0!!!! Při převodu binárního čísla 0,011001B do dekadické soustavy, výsledek se bude číslu 0,4 pouze přibližovat. Po převodu do dekadické soustavy je výsledná hodnota = 0,390625 (je 0,25 + 0,125 + 0,015652)
Převod celých dekadických čísel na hexadecimální Pro vyjádření převodu celého dekadického čísla je základní metodou převodu dělení určeného dekadického čísla základem hexadecimální soustavy. Po provedení dělení základem hexadecimální soustavy zapíšeme výsledek dělení tak, že dělíme na celá dekadická čísla a zároveň musíme zjistit, jaký je zbytek po operaci dělení. Hodnota zbytku může být 0 až 15, vyjde-li hodnota zbytku číslo 10 až 15, nelze provést zápis zbytku dekadickou hodnotou, ale příslušným hexadecimálním symbolem (10 = A, 11 = B, 12 = C, 13 = D, 14 = E, 15 = F). V dalším kroku se tento postup opakuje tak, že se dělí základem soustavy předchozí výsledek. Opět zapíšeme výsledek zaokrouhlený na celé dekadické číslo a hodnotu zbytku. Takto postupujeme až do toho stavu, kdy výsledek dělení základem soustavy bude hodnota 0. Zapíšeme hodnotu všech zbytků a provedeme zápis výsledku v hexadecimální hodnotě. Při převodu musíme správně provést zápis hexadecimálního čísla, proto je potřeba znát pozici nejnižšího platného bitu LSB (Least Significant Bit) a pozici nejvyššího platného bitu MSB (Most Significant Bit). Zvolené dekadické číslo = 330 Základ hexadecimální soustavy = 16 Výsledek Hexadecimální Zbytek znak 330 : 16 = 20 10 A 20 : 16 = 1 4 4 1 : 16 = 0 1 1 LSB MSB Zápis dekadického čísla 330 (10) na hexadecimální = 1 4 A H Řády binární soustavy - 16 2 16 1 16 0 Číselné vyjádření jednotlivých řádů - 256 64 10 Zvolené dekadické číslo 330 (10) při převodu na číslo hexadecimální má tuto hodnotu 1 4 A H.
Převod binárních čísel na dekadické Při převodu binárního čísla na dekadické provedeme číselné vyjádření jednotlivých řádů (vah). Poté se provede součet jednotlivých řádů (vah) vyjádřených dekadickým číslem. Pro převod se používá rozvoj dvojkové řady. 2 n-1 ;... ; 2 5 = 32; 2 4 = 16; 2 3 = 8; 2 2 = 4; 2 1 = 2; 2 0 = 1; 2-1 = 0,5; 2-2 = 0,25; 2-3 = 0,125;... ; 2 -(n-1) ; 2 -n Příklad : Převeďte binární číslo 110011,101B do dekadické soustavy 110011,101B = 1. 2 5 + 1. 2 4 + 0. 2 3 + 0. 2 2 + 1. 2 1 + 1. 2 0 + 1. 2-1 + 0. 2-2 + 1. 2-3 32 + 16 + 0 + 0 + 2 + 1 + 0,5 + 0 + 0,125 = 51,625 (10) Zvolené binární číslo 110011,101B při převodu na číslo dekadické má hodnotu 51,625 (10).
Převod hexadecimálních čísel na dekadické Při převodu hexadecimálního čísla provedeme číselné vyjádření jednotlivých vah. Poté se provede součet jednotlivých vah vyjádřených dekadickým číslem. Pro převod se používá rozvoj šestnáctkové řady. Stavům A, B, C, D, E, F v hexadecimální soustavě je potřeba přiřadit hodnotu pro dekadické vyjádření ( A = 10; B = 11; C = 12; D = 13; E = 14; F = 15 ). 16 n ; 16 n-1 ;... ; 16 5 = 1048576; 16 4 = 65536; 16 3 = 4096; 16 2 = 256; 16 1 = 16; 16 0 = 1; 16-1 = 0,0625; 16-2 = 0,00390625; 16-3 = 0,00024414;... ; 16 -(n-1) ; 16 -n Příklad : Převeďte hexadecimální číslo 6A7F1,B4H do dekadické soustavy 6A7F1,B4H = 6.16 4 + A.16 3 + 7.16 2 + F.16 1 + 1.16 0 + B.16-1 + 4.16-2 = 6. 65536 + 10.4096 + 7.256 + 15.16 + 1.1 + 11.0,0625 + 4. 0,00390625 = 393216 + 40960 + 1792 + 240 + 1 + 0,6875 + 0,015625 = = 436209,703125 (10) Zvolené hexadecimální 6A7F1,B4H při převodu na číslo dekadické má hodnotu 436209,703125 (10).
Převod binárních čísel na hexadecimální Při převodu mezi binární a hexadecimální soustavou jsou dvě možnosti : a) převod binárního čísla na číslo hexadecimální se provádí ve dvou krocích. V prvním kroku se binární číslo převede do dekadické soustavy. 10101111B = 1. 2 7 + 0. 2 6 + 1. 2 5 + 0. 2 4 + 1. 2 3 + 1. 2 2 + 1. 2 1 + 1. 2 0 = 175 (10) V druhém kroku se dekadické číslo převede na hexadecimální. 175 : 16 = 10 zb. 15 - F 10 : 16 = 0 zb. 10 - A 175 (10) = AFH b) převod podle tabulky vyjádření binární hodnoty hexadecimální hodnotou. Dané binární číslo se rozdělí po čtyřech cifrách, přičemž rozdělení se provádí od řádu (váhy ) 2 0 směrem doleva. Nemá-li binární číslo počet cifer, který je násobkem čtyř, je nutné dané binární číslo doplnit nulami tak, aby celkový počet cifer binárního čísla byl násobkem čtyř. Poté se jednotlivým čtveřicím cifer přiřadí hexadecimální ekvivalent (viz tabulka)
Převod binárních čísel na hexadecimální b) převod podle tabulky vyjádření binární hodnoty hexadecimální hodnotou. Dané binární číslo se rozdělí po čtyřech cifrách, přičemž rozdělení se provádí od řádu (váhy ) 2 0 směrem doleva. Nemá-li binární číslo počet cifer, který je násobkem čtyř, je nutné dané binární číslo doplnit nulami tak, aby celkový počet cifer binárního čísla byl násobkem čtyř. Poté se jednotlivým čtveřicím cifer přiřadí hexadecimální ekvivalent (viz tabulka) Příklad 1: 10101111B =? H ; A F H 10101111B = AFH 1010 1111 B Příklad 2 101111B =? H ; 0010 1111 B po doplnění 0010 1111 B 2 F H 101111B = 2FH Dekadické číslo B i n á r n í hodnota 2 3 2 2 2 1 2 0 Hexadecimální hodnota 0 0 0 0 0 0 1 0 0 0 1 1 2 0 0 1 0 2 3 0 0 1 1 3 4 0 1 0 0 4 5 0 1 0 1 5 6 0 1 1 0 6 7 0 1 1 1 7 8 1 0 0 0 8 9 1 0 0 1 9 10 1 0 1 0 A 11 1 0 1 1 B 12 1 1 0 0 C 13 1 1 0 1 D 14 1 1 1 0 E 15 1 1 1 1 F Tab. 1
Převod hexadecimálních čísel na binární b) převod podle tabulky vyjádření hexadecimální hodnoty binární hodnotou. Každý znak hexadecimálního čísla se vyjádří čtyřbitovým binárním číslem. Příklad 1: A736FH =... B A736FH 1010 0111 0011 0101 1111 A736FH = 10100111001101011111 B Dekadické číslo B i n á r n í hodnota 2 3 2 2 2 1 2 0 Hexadecimální hodnota 0 0 0 0 0 0 1 0 0 0 1 1 2 0 0 1 0 2 3 0 0 1 1 3 4 0 1 0 0 4 5 0 1 0 1 5 6 0 1 1 0 6 7 0 1 1 1 7 8 1 0 0 0 8 9 1 0 0 1 9 10 1 0 1 0 A 11 1 0 1 1 B 12 1 1 0 0 C 13 1 1 0 1 D 14 1 1 1 0 E 15 1 1 1 1 F Tab. 2
Použité zdroje: Kesl, Jan. Elektronika III Číslicová technika. Praha :BEN, 2003. 112 s. ISBN 80-7300-076-8. Tab. 1; 2: archiv autora.