Číslo projektu
CZ.1.07/1.5.00/34.0581
Číslo materiálu
VY_32_INOVACE_CTE_2.MA_03_Převod čísel mezi jednotlivými číselnými soustavami
Název školy
Střední odborná škola a Střední odborné učiliště, Dubno
Autor
Ing. Miroslav Krýdl
Tematická oblast
ČÍSLICOVÁ TECHNIKA
Ročník
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 =
MSB = Most Significant Bit – bit s nejvyšším řádem LSB = Least Significant Bit – bit s nejnižším řádem
Celočíselný výsledek Zbytek
328 164 82 41 20 10 5 2 1
: : : : : : : : :
2 2 2 2 2 2 2 2 2
= = = = = = = = =
164 82 41 20 10 5 2 1 0
0 0 0 1 0 0 1 0 1
2
LSB
MSB
Zápis dekadického čísla 328(10) na binární =
1
0
1
0
0
1
0
0
0
Řády binární soustavy -
28
27
26
25
24
23
22
21
20
256
0
64
0
0
8
0
0
0
Číselné vyjádření jednotlivých řádů -
B
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
0,25
Zápis jednot ek MSB 1
0,00
0 1
Výsledek Zbytek > 1
0,625 . 0,25 . 0,5 .
2 2 2
= = =
1,25 0,5 1,00
Základ binární soustavy =
Zápis dekadického čísla 0,625(10) na binární =
LSB
0
Řády binární soustavy Číselné vyjádření jednotlivých řádů -
2
0
,
1
0
1
2 -1
2 -2
2 -3
0,5
0
B
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
Zápis Výsledek Zbytek > 1 jednotek
0,4 0,8 0,6 0,2 0,4 0,8
. . . . . .
2 2 2 2 2 2
= = = = = =
0,8 1,6 1,2 0,4 0,8 1,6
0,6 0,2
0,6
Zápis dekadického čísla 0,4(10) na binární =
0 1 1 0 0 1
MSB
LSB
0
Řády binární soustavy Číselné vyjádření jednotlivých řádů -
0
,
0
1
1
0
0
2 -1
2 -2
2 -3
2 -4
2 -5
0
0,25 0,125
0
0
1 B 2 -6
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
Výsledek
330 20 1
: : :
16 16 16
= = =
20 1 0
Základ hexadecimální soustavy =
16
Hexadecimální znak Zbytek
10 4 1
A 4 1
Zápis dekadického čísla 330(10) na hexadecimální =
LSB MSB 1
4
A
Řády binární soustavy -
16 2
16 1
16 0
Číselné vyjádření jednotlivých řádů -
256
64
10
H
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. 2n-1; ... ; 25 = 32; 24 = 16; 23 = 8; 22 = 4; 21 = 2; 20 = 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 . 25 + 1 . 24 + 0 . 23 + 0 . 22 + 1 . 21 + 1 . 20 + 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 ). 16n; 16n-1; ... ; 165 = 1048576; 164 = 65536; 163 = 4096; 162 = 256; 161 = 16; 160 = 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.164 +
A.163 + 7.162 + F.161 + 1.160 +
6 . 65536 + 10.4096 + 7.256 + 15.16 + 1.1 393216 +
40960 + 1792 + 240
+ 1
B.16-1
+
+ 11.0,0625 + +
0,6875 +
4.16-2
=
4. 0,00390625 = 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 . 27 + 0 . 26 + 1 . 25 + 0 . 24 + 1 . 23 + 1 . 22 + 1 . 21 + 1 . 20 = 175(10) V druhém kroku se dekadické číslo převede na hexadecimální.
175 : 16 = 10 10 : 16 = 0
zb. 15 - F 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 ) 20 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 ) 20 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
1010 1111 B
H
10101111B = AFH
Příklad 2
101111B = ? H ; 0010 2
1111 B F
H
101111B = 2FH
0010 1111 B po doplnění
Dekadické číslo
Binární hodnota
Hexadecimální hodnota
23
22
21
20
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
Binární hodnota
Hexadecimální hodnota
23
22
21
20
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.