210 likes | 358 Views
BCD kód a záporná dvojková čísla. Střední odborná škola Otrokovice. Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Miloš Zatloukal
E N D
BCD kód a záporná dvojková čísla Střední odborná škola Otrokovice Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Miloš Zatloukal Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785, financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze. www.zlinskedumy.cz
BCD kód a záporná dvojková čísla Obsah tématuKódBCD kód- vlastnosti - převod z desítkového čísla do BCD kódu a naopak- vyjádření záporných BCD číselZáporná dvojková čísla vytvořená metodou: - znaménkového bitu (MZB) - prvního doplňku (M1D) - druhého doplňku (M2D)
Kód Kód je: – předpis, podle kterého je nějakému objektu jednoznačně přiřazena určitá kombinace prvků množiny daného kódu – pravidlo pro jednoznačné přiřazení prvků dvou množin (seznamů) – prvky první množiny jsou vyjádřeny pomocí prvků z druhé množiny Prvek kódu: – člen množiny se označuje jako znak (písmeno, číslice, symbol, značka) – znak má přiřazen určitý význam (nese proto určitou informaci) Abeceda: – množina všech znaků dané skupiny Kódování: - Jde o realizaci kódovacího pravidla – provádí ji obvod zvaný kodér, nazpět dekodér. Vše může být také prováděno softwarově – tedy programem.
BCD kód - BCD je zkratka z anglického Binary CodedDecimal - jde o zápis desítkových čísel pomocí dvojkové soustavy - je to čtyřbitový kód - typů BCD je více, nejběžnějším typem je BCD kód s vahami 8-4-2-1 Proč je tento kód právě čtyřbitový? Má vyjádřit čísla 0 až 9 a pro vyjádření číslic 8 a 9 ve dvojkové soustavě jsou už potřebné právě čtyři bity (810= 10002, 910= 10012) Proč je BCD kód smíšený? Protože kombinuje vlastnosti jak kódu desítkového, tak dvojkového. - z desítkového převzal řády – např. jednotky, desítky, stovky… -z dvojkového vyjádření každé desítkové číslice čtveřicí bitů dvojkového čísla Desítková číslice je vypočítána jako součet těch vah (8-4-2-1), na jejichž místě leží ve dvojkovém tvaru čísla jedničky.
BCD kód – pokračování Příklad: Převeďte desítkové číslo 849 do kódu BCD a porovnejte s jeho dvojkovým tvarem (jde nám o počet bitů). Řešení: Každou číslici zleva doprava (od nejvyššího řádu – zde od řádu stovek) převedeme na čtyřbitové číslo s vahami 8-4-2-1 8 = 1000 4 = 0100 9 = 1001 Dvojková čísla zapíšeme vedle sebe – bez mezer. Výsledek: (849)10= (100001001001)BCD A co převod z desítkové soustavy do dvojkové (přímý dvojkový kód)? Převod (849)10 do dvojkového tvaru: 1101010001 Vidíme, že BCD číslo má 12 bitů (3 x 4 bity) a stejné číslo ale vyjádřené dvojkově má 10 bitů – tedy o 2 méně. Závěr – BCD kód je jednoduchý, ale pokud jde o počet číslic = bitů je méně úsporný.
BCD kód – pokračování A co opačný převod – číslo v BCD kódu na desítkový tvar? Příklad: Převeďte BCD číslo 10000011 na desítkové číslo. Řešení: BCD číslo rozdělíme zprava na čtveřice a každou čtveřici na desítkovou číslici (váhy 8-4-2-1) 1000 0011 0011 = 2 + 1 = 3 1000 = 8 Výsledek: (10000011)BCD =(83)10 Použití BCD kódu: – u čítačů, kde se čítají události a zjištěné počty se zobrazují (například u desítkového čítače do 999 má každá dekáda jednu čtyřbitovou BCD číslici) –u analogově číslicového převodu metodou sériového porovnávání po řádech – jako vstupní kód u dekodéru (např. BCD kódu na kód sedmisegmentových zobrazovačů)
BCD kód – pokračování A co když potřebujeme v BCD kódu zapsat znaménko – kladné (+) či záporné (-) - k tomu se využívají jinak nepovolené kombinace bitů – tj. 1010 až 1111 - používané pravidla: - znaménko plus (kladná čísla) se vyjádří jako sudá čísla (desítkově 10, 12, 14 – dvojkově 1010, 1100, 1110) - mínus (záporná čísla) jako lichá čísla (desítkově 11, 13, 15 – dvojkově 1011, 1101, 1111) - znaménko nemusí být před číslem nebo za číslem ale kdekoliv – mezi kterýmikoliv dvěma čtveřicemi bitů Příklad: (-68)D= (101101101000)BCDnebo (011010111000)BCDnebo (011010001011)BCD (Pro znaménko mínus zde bylo použito číslo 1011=11 (zcela vlevo nebo uprostřed nebo zcela vpravo) ale mohlo to být i 1101=13 nebo 1111=15) Existují i BCD kódy s jinými vahami než je 8-4-2-1: je to např. kód s vahami 4-2-2-1, 3-3-2-1 nebo 2421 (Aikenův kód)
Záporná dvojková čísla Používají se tři metody pro vyjádření znaménka u dvojkového čísla 1) Metoda znaménkového bitu a absolutní hodnoty (MZB) 2) Metoda prvního (jednotkového) doplňku (M1D) 3) Metoda druhého (dvojkového) doplňku (M2D) 1) Metoda znaménkového bitu a absolutní hodnoty (MZB) U této metody se nejvyšší bit (s nejvyšší vahou – nejvýznamnější – MSB – Most Significant Bit) nepočítá do hodnoty čísla, ale pouze vyznačuje znaménko: - má hodnotu 0 pro plus - má hodnotu1 pro mínus Bity následující za tímto znaménkovým bitem pak určují absolutní hodnotu čísla.
Záporná dvojková čísla – pokračování – MZB Příklad č. 1: Jako osmibitové číslo zapište pomocí znaménkového bitu 127, -127, 125, -125, 63, -63, 19, -19 Řešení: Zadané desítkové číslo převedeme do dvojkové soustavy a zleva doplníme bitem znaménka: pro + je to nula a pro mínus je to jednička
Záporná dvojková čísla – pokračování – MZB Příklad č. 2: Jako osmibitové číslo zapište pomocí znaménkového bitu desítková čísla 155 a -155. Řešení: (155)10 = (10011011)2 - desítkové číslo 155 převedené do dvojkové soustavy, obsadí 8 bitů (nejvyšší bit je obsazen váhou dvojkové soustavy 27 = 128) - proto nelze na 8 bitech realizovat znaménko čísla (kladné nebo záporné) pomocí znaménkového bitu a max. velikost převáděného čísla se zmenšuje na polovinu (-127, 0, +127) Při práci se zápornými dvojkovými čísly vytvořenými pomocí znaménkového bitu se jednoduše provádí dvojkové násobení, ale složitěji dvojkové sčítání.
Záporná dvojková čísla –M1D 2) Metoda prvního (jednotkového) doplňku (M1D) - používá první doplněk - jde o rozdíl mezi absolutní hodnotou čísla a maximální hodnotou, kterou je možné zapsat na daném počtu bitů - maximální hodnotu vypočítáme podle vztahu 2n-1 (n je zadaný počet bitů a vznikne tak číslo, které obsahuje samé jedničky) Příklad: Vypočítejte největší číslo zobrazitelné na 4 a 8 bitech Řešení: n= 4, 24-1 = 15, (15)10 = (1111)2 n= 8, tedy půjde o 8 jedniček, (11111111)2 = (255)10, 28-1 = 255 - První doplněk (zde 1D) vznikne změnou jednotlivých bitů absolutní hodnoty převáděného čísla na opačnou hodnotu – jde o inverzi nebo také o negaci (převrácení – nuly za jedničky a naopak)
Záporná dvojková čísla – pokračování – M1D Proč se mu říká doplněk? - protože doplní zadané číslo (Č1) hodnotou (doplněk = D1) do maximálního čísla pro daný počet bitů n - pak můžeme psát rovnici: Č1 + D1 = 2n-1 Vyplyne to z příkladu: Doplněk k číslu 9 (1001)2 je 6 (0110)2 Zkouška: 9 + 6 = 15, 15 = 24 - 1 = 16 – 1 Takže doplněk můžeme vypočítat podle rovnice D1 = (2n-1) – C1, tedy po dosazení: 15 – 9 = 6 (0110) Jednodušší než tento rozdíl je negace čísla, jehož doplněk počítáme (Č1)
Záporná dvojková čísla – pokračování – M1D Příklad č. 1: Zapište dvojkově pomocí prvního doplňku desítkové číslo -13 (na 4 bitech) Řešení: Absolutní hodnota: (13)10 = (1101)2 První doplněk – vznikne negací: (0010)2 (pro kontrolu, číslo 2 je doplňkem čísla 13 do 15, 15 = 24 - 1) Výsledek: (-13)10 = (0010)2,M1D Příklad č.2: Zapište dvojkově pomocí prvního doplňku desítkové číslo -155 (na 8 bitech) Řešení: Absolutní hodnota: (155)10 = (10011011)2 První doplněk – vznikne negací : (01100100)2 (pro kontrolu, číslo 100 je doplňkem čísla 155 do 255, 255 = 28 - 1) Výsledek: (-155)10 = (01100100)2,M2D Při práci se zápornými dvojkovými čísly vzniklými pomocí prvního doplňku se jednoduše provádí dvojkové sčítání, ale složitěji dvojkové násobení.
Záporná dvojková čísla – pokračování – M2D 3) Metoda druhého (dvojkového) doplňku (M2D) - druhý doplněk (D2) je vlastně první doplněk (D1) zvětšený o 1 - můžeme tedy psát: D2 = D1 + 1 Postup pro zápis záporného čísla ve dvojkové soustavě pomocí metody druhého doplňku: - k zápornému desítkovému číslo zapíšeme jeho dvojkovou absolutní hodnotu - poté provedeme jeho negaci (první doplněk D1) - k tomuto mezivýsledku (D1) přičteme jedničku – vznikne tak druhý doplněk (D2) (jde zároveň o hledané záporné číslo) Příklad: Zapište dvojkově pomocí metody druhého doplňku desítkové číslo -134 na 8 bitech Řešení: Absolutní hodnota: (134)10 = (10000110)2 První doplněk – negace C1= D1: = (01111001)2 (pro kontrolu, číslo (01111001)2 =(121)10 je doplňkem do 255, 134 + 121 = 255) Druhý doplněk D2 = D1 + 1: (01111001)2+ 1 = (01111010)2 =(122)10 Výsledek: (-134)10= (01111010)2, M2D
Záporná dvojková čísla – pokračování – M2D Při práci se zápornými dvojkovými čísly vzniklými pomocí druhého doplňku je složitost aritmetických operací v dvojkové soustavě poměrně vyrovnaná a proto je tento způsob zápisu záporných dvojkových čísel nejčastěji používán v aritmetických instrukcích počítačů, mikropočítačů, signálových procesorů apod.
BCD kód je čtyřbitový a kombinuje výhodně Dvojkový a šestnáctkový Dvojkový a desítkový Dvojkový a osmičkový Kontrolní otázky 2. U které metody pro záporná dvojková čísla můžeme na 8 bitech zobrazit maximální číslo ±127? Metoda znaménkového bitu (MZB) Metoda prvního doplňku (M1D) Metoda druhého doplňku (M2D) 3. Která metoda pro záporná dvojková čísla je nevíce používaná (z toho důvodu, že je stejně vhodná pro různé aritmetické operace) Metoda znaménkového bitu (MZB) Metoda prvního doplňku (M1D) Metoda druhého doplňku (M2D)
BCD kód je čtyřbitový a kombinuje výhodně Dvojkový a šestnáctkový Dvojkový a desítkový Dvojkový a osmičkový Kontrolní otázky – správné odpovědi 2. U které metody pro záporná dvojková čísla můžeme na 8 bitech zobrazit maximální číslo ±127? Metoda znaménkového bitu (MZB) Metoda prvního doplňku (M1D) Metoda druhého doplňku (M2D) 3. Která metoda pro záporná dvojková čísla je nevíce používaná (z toho důvodu, že je stejně vhodná pro různé aritmetické operace) Metoda znaménkového bitu (MZB) Metoda prvního doplňku (M1D) Metoda druhého doplňku (M2D)
Seznam použité literatury: [1] Matoušek, D.: Číslicová technika, BEN, Praha, 2001, ISBN 80-7232-206-0 [2] Blatný, J., Krištoufek, K., Pokorný, Z., Kolenička, J.: Číslicové počítače, SNTL, Praha, 1982 [3] Kesl, J.: Elektronika III – Číslicová technika, BEN, Praha, 2003, ISBN 80-7300-075-X