ČÍSLICOVÁ TECHNIKA OBSAH KAPITOLA 1 ČÍSELNÉ SOUSTAVY A KÓDY



Podobné dokumenty
ČÍSELNÉ SOUSTAVY PŘEVODY

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

ČÍSELNÉ SOUSTAVY. Číselnou soustavu, která pro reprezentaci čísel využívá pouze dvou číslic, nazýváme soustavou dvojkovou nebo binární.

Kódováni dat. Kódy používané pro strojové operace

Číselné soustavy a převody mezi nimi

Fz =a z + a z +...+a z +a z =

3 Jednoduché datové typy Interpretace čísel v paměti počítače Problémy s matematickými operacemi 5

Číselné soustavy. Ve světě počítačů se využívají tři základní soustavy:

Principy počítačů. Prof. RNDr. Peter Mikulecký, PhD.

Mikroprocesorová technika (BMPT)

MATA Př 3. Číselné soustavy. Desítková soustava (dekadická) základ 10, číslice 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy

PJC Cvičení #2. Číselné soustavy a binární reprezentace proměnných

Nejvyšší řád čísla bit č. 7 bit č. 6 bit č.5 bit č. 4 bit č. 3 bit č. 2 bit č. 1 bit č. 0

Struktura a architektura počítačů (BI-SAP) 5

Číselné soustavy. Jedná se o způsob reprezentace čísel.

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Nejvyšší řád čísla bit č. 7 bit č. 6 bit č.5 bit č. 4 bit č. 3 bit č. 2 bit č. 1 bit č. 0

1.5.2 Číselné soustavy II

Výukový materiál zpracovaný v rámci projektu Výuka moderně Registrační číslo projektu: CZ.1.07/1.5.00/

Základní jednotky používané ve výpočetní technice

Y36SAP. Osnova. Číselné soustavy a kódy, převody, aritmetické operace Y36SAP Poziční číselné soustavy a převody.

Pokud není uvedeno jinak, uvedený materiál je z vlastních zdrojů autora

Převody mezi číselnými soustavami

Algoritmy I. Číselné soustavy přečíst!!! ALGI 2018/19

Číselné soustavy. Binární číselná soustava

Převod Bin do BCD pomocí Hornerova schématu

Číslo materiálu. Datum tvorby Srpen 2012

Způsoby realizace této funkce:

Číselné vyjádření hodnoty. Kolik váží hrouda zlata?

P2 Číselné soustavy, jejich převody a operace v čís. soustavách

4a) Racionální čísla a početní operace s nimi

VY_32_INOVACE_CTE_2.MA_04_Aritmetické operace v binární soustavě Střední odborná škola a Střední odborné učiliště, Dubno Ing.

Mocniny. Nyní si ukážeme jak je to s umocňováním záporných čísel.

1. Základní pojmy a číselné soustavy

Čísla a číselné soustavy.

Čísla, reprezentace, zjednodušené výpočty

Digitalizace dat metodika

ZŠ ÚnO, Bratří Čapků 1332

Čísla a aritmetika. Řádová čárka = místo, které odděluje celou část čísla od zlomkové.

1.5.1 Číselné soustavy

Čísla v počítači Výpočetní technika I

Úvod do programování 7. hodina

Instrukce: Jednotlivé části nejdou přesně po sobě, jak jsme se učili, je to shrnutí.

Číselné soustavy - Teorie

Čísla, reprezentace, zjednodušené výpočty

Rozšiřování = vynásobení čitatele i jmenovatele stejným číslem různým od nuly

Aritmetické operace a obvody pro jejich realizaci

7 = 3 = = Učivo Vysvětlení Př. + pozn. Zlomek = vyjádření části celku 3 část snědla jsem 3 kousky

KOMBINAČNÍ LOGICKÉ OBVODY

ARITMETICKÉ OPERACE V BINÁRNÍ SOUSTAVĚ

Kódy a kódování dat. Binární (dvojkové) kódy. Kód Aikenův

2.8 Kodéry a Rekodéry

Variace. Číselné výrazy

Přednáška 2: Čísla v počítači. Práce s počítačem. Číselné soustavy. Převody mezi soustavami. Aritmetické operace. Uložení čísel v paměti počítače

2 Ukládání dat do paměti počítače

ZLOMKY A RACIONÁLNÍ ČÍSLA. Pojem zlomku. Zlomek zápis části celku. a b. a je část, b je celek, zlomková čára

Algoritmizace a programování

M - Příprava na pololetní písemku č. 1

( ) Jako základ mocnin nemusíme používat jen 10. Pokud není jasné, že číslo je uvedeno v desítkové soustavě, píšeme jej takto: ( ) 10

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4

Principy počítačů I Reprezentace dat

Souhrnná prezentace. 14. října Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze

Početní operace se zlomky

Základní principy zobrazení čísla Celá čísla s pevnou řádovou čárkou Zobrazení reálných čísel Aritmetika s binárními čísly

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické

Analogově-číslicové převodníky ( A/D )

Matematika - 6. ročník Vzdělávací obsah

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

OD NULY K NEKONEâNU Poãítej jako EgypÈan âíslice, které nestárnou

ASYNCHRONNÍ ČÍTAČE Použité zdroje:

Racionální čísla. teorie řešené úlohy cvičení tipy k maturitě výsledky. Víš, že. Naučíš se

0,2 0,20 0, Desetinná čísla II. Předpoklady:

Variace. Mocniny a odmocniny

M - Příprava na 1. zápočtový test - třída 3SA

Logaritmy a věty o logaritmech

Kapitola 1. Signály a systémy. 1.1 Klasifikace signálů

Algoritmy a datové struktury

DRUHÁ MOCNINA A ODMOCNINA. Irena Sytařová

Předmět: MATEMATIKA Ročník: PRVNÍ Měsíc: učivo:. ZÁŘÍ ŘÍJEN LISTOPAD PROSINEC

Typy násobení z různých koutů světa

v aritmetické jednotce počíta

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Úlohy krajského kola kategorie C

GEODETICKÉ VÝPOČTY I.

Řešení čtvrté série (14. dubna 2009)

Podíl dvou čísel nazýváme číslo racionální, která vyjadřujeme ve tvaru zlomku.

ISU Cvičení 1. Marta Čudová

Lineární funkce, rovnice a nerovnice 4 lineární nerovnice

Nápovědy k numerickému myšlení TSP MU

Výroková logika II. Negace. Již víme, že negace je změna pravdivostní hodnoty výroku (0 1; 1 0).

Seriál II.II Vektory. Výfučtení: Vektory

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

0.1 Úvod do lineární algebry

E. Pohyblivářádováčárka

9 Kolmost vektorových podprostorů

Architektury počítačů

Kapitola 2. o a paprsek sil lze ztotožnit s osou x (obr.2.1). sil a velikost rovnou algebraickému součtu sil podle vztahu R = F i, (2.

Nerovnice a nerovnice v součinovém nebo v podílovém tvaru

Informatika Datové formáty

Transkript:

OBSAH Čísla a číslice... Desítková (dekadická ) číselná soustava... Tvorba libovolné číselné soustavy... 3 Převody čísel mezi číselnými soustavami... 6 Převod čísel z dekadické soustavy do libovolné jiné... 6 Převod čísel z libovolné soustavy do dekadické... 7 Převody čísel mezi příbuznými číselnými soustavami... 7 Početní operace s binárními čísly... 9 Kód BCD... 11 Grayův kód... 11 Literatura... 13 V Ostravě 15.1.01 Ing. Pavel Bachura

Čísla a číslice Číslo je abstraktní entita užívaná pro vyjádření množství nebo pořadí. (Možno zapomenout). Číslice jsou matematické symboly sloužící k zápisu čísel. (Nutno pamatovat!) Příklady: 7 číslice i číslo (jednociferné má jednu číslici cifru). 7 pouze číslo (dvouciferné má dvě číslice cifry). Desítková (dekadická ) číselná soustava Desítková (dekadická, decimální) soustava má základ číslo 10 a také 10 číslic: 0, 1,, 3, 4, 5, 6, 7, 8, 9. Všimněme si, že samotný základ číselné soustavy mezi číslicemi není. To platí všeobecně. Největší číslice každé (poziční) 1 číselné soustavy je vždy o jedničku menší než její základ. Každá číslice v čísle má jinou váhu danou její pozicí (em). Proto desítková soustava patří do kategorie tzv. pozičních soustav. 1 356,48 desetitisíců tisíců stovek desítek jednotek desetin setin tisícin POZOR! Název desítková (dekadická) soustava není odvozen od počtu číslic! Název každé číselné soustavy je odvozen od jejího základu r (báze). Tato skutečnost je dobře patrná z tzv. Hornerova schématu, podle kterého je možno každé číslo rozepsat. 1 356,48 = 1 10 4 + 10 3 + 3 10 + 5 10 1 + 6 10 0 + 4 10-1 + 10 - -3 + 8 10 kde základ číselné soustavy r = 10. Připomeňme: a) 10 0 = 1, neboť každé číslo (s výjimkou nuly) umocněné na nultou je jedna. Výraz 0 0 není definován 3. 1 1 b) 10 = = = 0, 01 10 100 1 Tvrzení platí pro zde probírané poziční číselné soustavy, které mají základ přirozené číslo, s výjimkou soustavy unární se základem 1. Tu používá např. servírka při zápisu čárek k ceně piva na účtence v restauraci. Zde má každá čárka stejnou váhu bez ohledu na její pozici, tedy bez ohledu na to, jak vypadáme po prvním pivu nebo po patnáctém. Také římské číslice jsou nepoziční soustava. Označení r je podle anglického radix základ (původně latinsky kořen). 3 Nechci se pouštět do exaktních matematických důkazů, jen si zkuste na kalkulačce pomocí funkce y x postupně umocňovat nějaké kladné číslo y 0 kladným resp. záporným exponentem x blížícím se k nule (0,5, 0,1, 0,01, 0,0000001,... resp. 0,5, 0,1, 0,01, 0,000001,...) a uvidíte, jak se výsledky přibližují k jedničce. Strana (celkem 13)

Pro snazší pochopení budeme dále pracovat pouze s celými čísly, i když uvedené principy lze aplikovat i na čísla desetinná. U Hornerova schéma je důležité umět správně pojmenovat jednotlivé symboly: exponenty (mocnitelé) základu 10 4 3 1 0 číselné koeficienty základčíselné soustavy r Tvorba libovolné číselné soustavy V technické praxi velmi často používáme i jiné poziční číselné soustavy než dekadickou. Nejdůležitější z nich je binární (dvojková) soustava a v těsném závěsu za ní hexadecimální (šestnáctková) soustava. Pro lepší pochopení dalších souvislostí ukážeme také méně používané soustavy - osmičkovou (oktalovou) a čtyřkovou, případně i jiné. Pokud pracujeme s více číselnými soustavami, je nutné tyto soustavy při zápisu čísel rozlišovat. To se zpravidla dělá pomocí dolního indexu za příslušným číslem. 956 v dekadické soustavě zapíšeme 956 10 nebo 956 DEC 74 v oktalové (osmičkové) soustavě zapíšeme 74 8 nebo 74 OCT 1011011 v binární (dvojkové) soustavě zapíšeme 1011011 nebo 1011011 BIN 70 v hexadecimální (šestnáctkové) soustavě zapíšeme 70 16 nebo 70 HEX případně 70H Porozumět tvorbě číselných soustav je velmi snadné, pokud vyjdeme z následujících bodů: a) Na chvíli zapomeneme, že číslo 10 se čte deset. Jak ho tedy číst? Např. 6 + 4 = 10 přečteme šest plus čtyři je nula a jednička postupuje do vyššího u. b) Největší číslice každé poziční číselné soustavy je vždy o jedničku menší než její základ. Tedy: Desítková soustava má základ číslo 10 a také 10 číslic 0, 1,, 3, 4, 5, 6, 7, 8, 9. Dvojková soustava má základ číslo a také číslice 4 0, 1. Čtyřková soustava má základ číslo 4 a také 4 číslice 0, 1,, 3. Pětková 5 soustava má základ číslo 5 a také 5 číslic 0, 1,, 3, 4. 4 Pro číslice dvojkové soustavy používáme často název bit z anglického sousloví binary digit (dvojková číslice; také angl. bit = drobek, kousek). 1 bit je základní a současně nejmenší jednotkou informace, používaná především v číslicové a výpočetní technice. Může nabývat pouze dvou hodnot (logických stavů) 0 a 1. Značí se malým písmenem b, např. 16 b, ale může se také objevit i označení bit, např. 16 bit (16 bitů). 5 Pětková soustava se v technické praxi nevyužívá. Přidal jsem ji proto, že žáci zpravidla číslo 5 velmi dobře znají a je jim tedy blízké. Strana 3 (celkem 13)

Osmičková soustava má základ číslo 8 a také 8 číslic 0, 1,, 3, 4, 5, 6, 7. Šesnáctková soustava má základ číslo 16 a také 16 číslic 0, 1,, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Pozor! Nejsou zde žádná písmena! Jen číslice! c) Pokud k nějaké číslici libovolné poziční číselné soustavy přičteme jedničku, a výsledkem je opět číslice této číselné soustavy, napíšeme ji. d) Pokud k největší číslici libovolné poziční číselné soustavy přičteme jedničku, napíšeme znovu nulu a jednička postupuje do vyššího u (vzniká přenos do vyššího u, do vyšší pozice; jedna jde dál podržet palcem levé ruky). Příklady přičítání jedničky v různých číselných soustavách jsou v tabulce 1. Tab. 1.1 Příklady přičítání jedničky v různých číselných soustavách Příklady Důležité mezivýpočty a komentáře 9 10 1 10 10 10 39 10 1 10 40 10 99 10 1 10 100 10 1 + 9 je 0 a jedna jde dál (9 je největší číslice) 1 + 3 jsou 4 (přenos do vyššího u nevzniká, je 0) 1 + 0 je 1 (přenos do vyššího u nevzniká, je 0) 4 5 1 5 10 5 4 5 1 5 30 5 44 5 1 5 100 5 1 + 4 je 0 a jedna jde dál (4 je největší číslice) 1 + jsou 3 (přenos do vyššího u nevzniká, je 0) 1 + 0 je 1 (přenos do vyššího u nevzniká, je 0) 1 1 10 11 1 100 101 1 110 1 + 1 je 0 a jedna jde dál (1 je největší číslice) 1 + 0 je 1 (přenos do vyššího u nevzniká, je 0) 3 4 1 4 10 4 3 4 1 4 30 4 33 4 1 4 100 4 1 + 3 je 0 a jedna jde dál (3 je největší číslice) 1 + jsou 3 (přenos do vyššího u nevzniká, je 0) 1 + 0 je 1 (přenos do vyššího u nevzniká, je 0) 7 8 1 8 10 8 7 8 1 8 30 8 77 8 1 8 100 8 1 + 7 je 0 a jedna jde dál (7 je největší číslice) 1 + jsou 3 (přenos do vyššího u nevzniká, je 0) 1 + 0 je 1 (přenos do vyššího u nevzniká, je 0) F 16 1 16 10 16 9F 16 1 16 A0 16 FF 16 1 16 100 16 1 + F je 0 a jedna jde dál (F je největší číslice) 1 + 9 je A (přenos do vyššího u nevzniká, je 0) 1 + 0 je 1 (přenos do vyššího u nevzniká, je 0) POZOR! Výrazy 10, 101, 30 a pod. čteme deset, sto jedna, třicet pouze v dekadické soustavě! V ostatních soustavách čteme jedna nula, jedna nula jedna, tři nula, a pod. Na základě popsaných principů můžeme snadno sestavit tabulku třeba prvních 5 čísel libovolné číselné soustavy. Vybírám jen číselné soustavy používané v číslicové technice: V praxi se ještě vyskytuje soustava dvanáctková (r = 1, 1 0 = 1, 1 1 = 1 tucet, 1 = 144 tucet tuctů veletucet) a šedesátková (r = 60, 60 0 = 1, 60 1 = 60 kopa, 60 = 3600 kopa kop velekopa). Strana 4 (celkem 13)

Tab. 1. Číselné soustavy s různými základy r (a kódy) Číselné soustavy s různými základy r dec r = 10 bin r = čtyř. r = 4 oct r = 8 hex r = 16 * 0 * 0 * 0 * 0 * 0 * 1 * 1 * 1 * 1 * 1 * * 10 * * * * 3 * 11 * 3 * 3 * 3 * 4 100 * 10 * 4 * 4 * 5 101 11 * 5 * 5 * 6 110 1 * 6 * 6 * 7 * 111 13 * 7 * 7 * 8 1000 0 * 10 * 8 * 9 1001 1 11 * 9 * 10 * 1010 1 * A 11 1011 3 13 B 1 1100 30 14 C 13 1101 31 15 D 14 1110 3 16 E * 15 * 1111 33 17 * F * 16 10000 100 0 * 10 17 10001 101 1 11 18 10010 10 1 19 10011 103 3 13 0 10100 110 4 14 1 10101 111 5 15 10110 11 6 16 3 10111 113 7 17 4 11000 10 30 18 5 11001 11 31 19 * 55 * 11111111 3333 377 * FF BCD Kódy GRAY Všechna čísla v jednom každém ku tabulky mají stejnou velikost, jsou v totožném bodě na reálné ose, jsou jen vyjádřena v různých číselných soustavách. Například číslo 1101 je binární ekvivalent 6 dekadického čísla 13 10. Matematický zápis: 1101 = 13 10. V technické praxi ale říkáme poněkud nepřesně, že 1101 je binární třináctka. Čísla označená hvězdičkou musí každý technik v ČT a ICT dostat pod kůži, tzn. má-li například napsat binární či hexadecimální ekvivalent dekadického čísla 15 10, musí reagovat ihned! Zkuste si to! 6 Ekvivalentní jsou např. dvě různé věci, které se ale shodují v dané situaci rozhodujících vlastnostech. Ekvivalenty jsou tudíž, přes svou rozdílnost, zaměnitelné. Například ve starším elektronickém zařízení můžeme nahradit starý typ tranzistoru jeho novodobým ekvivalentem. Je nám lhostejný materiál, tvar, barva a velikost pouzdra, typové označení, často i uspoání vývodů, ale musí mít alespoň přibližně stejné elektrické parametry. Např. maximální kolektorový proud I Cmax, maximální napětí mezi kolektorem a emitorem U CEmax, maximální ztrátový výkon P max a pod. Strana 5 (celkem 13)

Číslo 55 DEC = 11111111 BIN = FF HEX jsem do tabulky přidal pro jeho velmi významné postavení v číslicové a výpočetní technice. Je to největší číslo, které lze vyjádřit pomocí 1 B (byte, bajt), to jest tzv. slabiky, která obsahuje právě 8 bitů. Jak jsem ho převedl, uvidíme v následující kapitole. Binární čísla bývají často vpředu doplněna nulami na 4 respektive 8 bitů, tedy ½ bajtu nebo celý bajt. Např. 11 zapisujeme 0011 respektive 00000011. Proč je tomu tak, pochopíme lépe při další práci s binárními čísly. Podstatné je, že hodnota čísel se tím nemění. Poslední dva sloupce tabulky jsou připraveny pro učivo z dalších kapitol. Pokud si děláte své výpisky, doporučuji je teď přidat a později vyplnit. Převody čísel mezi číselnými soustavami Převod čísel z dekadické soustavy do libovolné jiné Dekadické číslo dělíme celočíselně se zbytkem základem nové číselné soustavy tak dlouho, dokud nedělíme nulu. Zbytky po dělení seřazené zdola nahoru potom dávají číslo v nové číselné soustavě. Příklady: Převod čísla 197 10 z desítkové soustavy do dvojkové celočíselné dělení zbytek po dělení 197 : = 98 1 98 : = 49 0 49 : = 4 1 4 : = 1 0 1 : = 6 0 6 : = 3 0 3 : = 1 1 1 : = 0 1 0 : = 0 0 směr čtení převedeného čísla výsledek převodu 197 10 = 11000101 Převod čísla 197 10 z desítkové soustavy do čtyřkové celočíselné dělení zbytek po dělení 197 : 4 = 49 1 49 : 4 = 1 1 1 : 4 = 3 0 3 : 4 = 0 3 0 : 4 = 0 0 směr čtení převedeného čísla Převod čísla 3 10 z desítkové soustavy do osmičkové celočíselné dělení zbytek po dělení 3 : 8 = 7 7 7 : 8 = 3 3 3 : 8 = 0 3 0 : 8 = 0 0 směr čtení převedeného čísla výsledek převodu 197 10 = 3011 4 výsledek převodu 3 10 = 337 8 Strana 6 (celkem 13)

Převod čísla 3 10 z desítkové soustavy do šestnáctkové celočíselné dělení zbytek po dělení 3 : 16 = 13 15 10 (F 16 ) 13 : 16 = 0 13 10 (D 16 ) 0 : 16 = 0 0 směr čtení převedeného čísla výsledek převodu 3 10 = DF 16 Poznámka: Jak zjistíme, že šestnáctkové ekvivalenty dekadických čísel 15 10 a 13 10 jsou F 16 a D 16? Zatím se ještě můžeme podívat do tabulky, ale už bychom si měli pamatovat: 10 10 = A 16 a 15 10 = F 16. Zbývající číslice odpočítáme pěkně na prstech: B, C, D, E 11, 1, 13, 14 (hnidopich může připočítávat prsty na nohou). Převod čísel z libovolné soustavy do dekadické Číslo zapsané v libovolné číselné soustavě rozepíšeme podle Honerova schématu a provedeme všechny výpočty podle pravidel platných v dekadické soustavě. Příklady: Převod čísla 11000101 z binární soustavy (r = ) do desítkové 11000101 = 1 7 + 1 6 + 0 5 + 0 4 + 0 3 + 1 + 0 1 + 1 0 = = 18 + 64 + 0 + 0 + 0 + 4 + 0 + 1 = 197 10 Převod čísla 301 4 ze čtyřkové soustavy (r = 4) do desítkové 301 4 = 3 4 3 + 4 + 0 4 1 + 1 4 0 = 3 64 + 16 + 0 4 + 1 1 = 19 + 3 + 0 + 1 = 5 10 Převod čísla 307 8 z osmičkové soustavy (r = 8) do desítkové 307 8 = 3 8 + 0 8 1 + 7 8 0 = 3 64 + 0 8 + 7 1 = 19 + 0 + 7 = 199 10 Převod čísla D7 16 z šestnáctkové soustavy (r = 16) do desítkové D7 16 = D 16 1 + 7 16 0 = 13 16 + 7 1 = 08 + 7 = 15 10 Převody čísel mezi příbuznými číselnými soustavami Číselně soustavy se základy, 4, 8 a 16 jsou příbuzné, Příbuznost je patrna nejlépe z toho, že můžeme velmi snadno převádět čísla z binární soustavy do zbývajících tří a také naopak. V číslicové technice se budeme zabývat především těmito příbuznými číselnými soustavami. Je proto velmi důležité tyto převody dokonale ovládat. Převod čísel ze čtyřkové soustavy (r = 4) do dvojkové Každou číslici čísla ve čtyřkové soustavě zapíšeme pomocí dvou bitů binárního čísla. 30114 11000101 3011 4 = 11000101 Převod čísel z osmičkové soustavy (r = 8) do dvojkové Strana 7 (celkem 13)

ČÍSLICOVÁ TECHNIKA Každou číslici čísla v osmičkové soustavě zapíšeme pomocí tří bitů binárního čísla. Nevýznamné nuly na začátku binárního čísla není nutno zapisovat. Převod čísel z šestnáctkové soustavy (r = 16) do dvojkové Každou číslici čísla v šestnáctkové soustavě zapíšeme pomocí čtyř bitů binárního čísla. Nevýznamné nuly na začátku binárního čísla opět není nutno zapisovat. Stojí za povšimnutí, že počet bitů binárních ekvivalentů původních číslic je vždy shodný s počtem bitů binárního ekvivalentu největší číslice původní číselné soustavy (3 4 = 11, 7 8 = 111, 15 16 = 1111 ). Převody čísel z dvojkové soustavy do ostatních příbuzných děláme opačným postupem, nejdříve binární číslo rozdělíme odzadu podle příslušného počtu bitů a pak převedeme každou bitovou skupinu zvlášť. Převod čísel z dvojkové soustavy do čtyřkové 3718 011111001 3C16 00111100 Binární číslo rozdělíme odzadu po dvou bitech a převedeme každou dvojici zvlášť. 10111001 3 1 Převod čísel z dvojkové soustavy do osmičkové 4 371 8 = 11111001 3C 16 = 111100 10111001 = 31 4 Binární číslo rozdělíme odzadu po třech bitech a převedeme každou trojici zvlášť. 10111001 7 1 8 10111001 = 71 8 Převod čísel z dvojkové soustavy do šestnáctkové Binární číslo rozdělíme odzadu po čtyřech bitech a převedeme každou čtveřici zvlášť. 10111001 B 9 16 10111001 = B9 16 Převody čísel mezi ostatními příbuznými soustavami provádíme zpravidla přes dvojkovou soustavu. Převody pomocí kódu 841 Pro převody čtyřbitových (případně i tříbitových) binárních čísel používáme kód 841, což je v podstatě zkrácené Hornerovo schéma mocniny čísla. Uvedené číslice napíšeme sestupně a pak, pod ně, převáděné binární číslo. Součet číslic kódu, pod kterými jsou binární jedničky, je výsledek převodu 7. 7 Kód 841 je zpravidla vnímán pouze jako druhé označení kódu BCD (viz dále). Ale myslím si, že nic nebrání jeho rozšířenému použití tak, jak to dělám zde. Strana 8 (celkem 13)

841 číslice kódu (připravíme vždy stejně) 1011 převáděné binární číslo => 1011 = 8 + + 1 = 11 10 = B 16 Máme-li naopak převést např. číslo D 16 do binární soustavy, nejprve si na prstech odpočítáme převod do dekadické (D 16 = 13 10 ) a potom vybereme právě ty číslice kódu, jejichž součtem získáme převáděné číslo (13 10 = 8 + 4 + 1). Jde to vždy jen jedním způsobem. Pod vybrané číslice pak napíšeme jedničky a pod zbývající nuly. 841 číslice kódu (připravíme vždy stejně) 1101 pod vybrané číslice pak napíšeme jedničky a pod zbývající nuly Tak získáme hledané binární číslo, výsledek převodu (D 16 = 13 10 = 8 + 4 + 1 = 1101 ). Znalost kódu 841 je velmi užitečná pro zrychlení převodů čísel. Početní operace s binárními čísly Některé z prvních počítačů (např. ENIAC) pracovaly v dekadické soustavě, tzn. pro každou z deseti číslic byl vymezen určitý rozsah napětí. Tyto počítače ale byly příliš složité, měly malý výpočetní výkon vzhledem ke své velikosti (brontosauří syndrom) a byly málo spolehlivé; kontrolní mechanismy správnosti zpracování dat byly jen velmi obtížně aplikovatelné. Ukázalo se, že je mnohem výhodnější umístit na vstup počítače převodník dekadického kódu na binární, ve kterém jsou vykonány veškeré početní operace a znovu použít převodník pro zobrazení výsledku v dekadické podobě. Pro vykonávání početních operací v binárním kódu je počítač vybaven potřebnými registry (rychlé paměťové buňky) a logickými obvody pro provádění poměrně jednoduchých logických operací (například posun bajtu v registru o jeden bit doleva či doprava, záměna nul jedničkami či jedniček nulami apod.) Ryze aritmetickou operaci ale počítač ve skutečnosti provádí jen jednu součet binárních čísel. Odčítání, násobení, dělení, umocňování, odmocňování i výpočty goniometrických a jiných funkcí to všechno je pomocí důvtipných algoritmů převáděno na sčítání. Proto budeme sčítání binárních čísel věnovat zvláštní pozornost. Jednobitová čísla již sčítat umíme (viz tvorba dvojkové soustavy) a k pochopení součtu vícebitových čísel stačí pozorně projít následující příklad s komentáři k dílčím výpočtům. 10111001 11011101 110010110 komentáře k dílčím výpočtům 1 + 1 = 0 a jedna jde dál 0 + 0 = 0 a 1 z přenosu = 1 (přenos 0) 1 + 0 = 1 (přenos 0) 1 + 1 = 0 a jedna jde dál 1 + 1 = 0 a 1 z přenosu = 1 a jedna jde dál 0 + 1 = 1 a 1 z přenosu = 0 a jedna jde dál 1 + 0 = 1 a 1 z přenosu = 0 a jedna jde dál 1 + 1 = 0 a 1 z přenosu = 1 a jedna jde dál 1 z přenosu Strana 9 (celkem 13)

Pěkný příklad pro pochopení toho, jak se aritmetické operace provádí pomocí sčítání, je rozdíl dvou binárních operandů vypočítaný pomocí jednotkového doplňku. Uvádím pouze postup výpočtu bez důkazu. 1011011 110111 a) zopakujeme si názvy obou operandů, jak jsme se je učili ve třetí třídě základní školy menšenec a menšitel a menšitele doplníme vpředu nulami na stejný počet bitů, kolik jich má menšenec 1011011 menšenec 0110111 menšitel b) menšence opíšeme beze změny a přičteme jednotkový doplněk menšitele, který vytvoříme záměnou nul jedničkami a jedniček nulami 1011011 menšenec 1001000 doplněk menšitele 10100011 mezisoučet c) z výsledného mezisoučtu odebereme jedničku z nejvyššího bitu, přičteme ji k nejnižšímu bitu a je to hotové (nevýznamnou nulu na začátku rozdílu již neopisuji) 100011 mezisoučet bez jedničky v nejvyšším bitu 1 tahle jednička by tam vyloženě chyběla, nutno ji přičíst 100100 hledaný rozdíl d) můžeme tedy nalezený rozdíl zapsat do původního zadání 1011011 menšenec 110111 menšitel 100100 nalezený rozdíl e) pro jistotu vykonáme zkoušku, stejně jako ve třetí třídě základní školy, sečteme rozdíl s menšitelem a musí vyjít menšenec Zkouška: 100100 k nalezenému rozdílu 110111 přičteme menšitele 1011011 a součet se vskutku shoduje s menšencem v zadáním Poznámka: V literatuře často nacházíme nalezení rozdílu binárních čísel pomocí tzv. dvojkového doplňku. Ten získáme tak, že jednotkový doplněk zvětšíme o jedničku. Dvojkový doplněk pak sečteme s menšencem a jedničku v nejvyšším bitu součtu (hledaného rozdílu původního zadání) odstraníme. Je evidentní, že obě metody jsou ve svém důsledku rovnocenné. Dvojkový doplněk je zřejmě lepší pro pochopení, jak to všechno funguje. To ale není předmětem tohoto zjednodušeného výukového materiálu. Důkaz najdete např. v [1] nebo zadáním výrazu dvojkový doplněk v četných odkazech vyhledávačů na webu. Strana 10 (celkem 13)

Kód BCD Kód BCD (Binary Coded Decimal) je jedním z nejčastěji používaných kódů pro reprezentaci desítkových čísel. Při tomto kódování je každá číslice dekadického čísla zakódována pomocí čtyř bitů binární číselné soustavy. 39 10 00111001 BCD 39 10 = 111001 BCD Zpětný převod: BCD číslo rozdělíme odzadu po čtyřech bitech a převedeme každou čtveřici zvlášť. Čísla v kódu BCD jsou velmi podobná číslům binární soustavy, ale vychází při stejné hodnotě poněkud delší (alespoň od čísla 10 10 = 1010 = 10000 BCD ). To je způsobeno tím, že ne každá kombinace nul a jedniček je v kódu BCD smysluplná. Například číslo 111010101 BIN je v poku (odpovídá číslu 469 10 ), ale 111010101 BCD je zcela mimo realitu, neboť odzadu druhá čtveřice bitů 1101 sice odpovídá dekadickému číslu 13 10 nebo hexadecimální číslici D 16, ale nemá ekvivalent v žádné dekadické číslici. Grayův kód Grayův kód se také nazývá zrcadlový. Brzy uvidíme proč. Abychom pochopili jeho význam, ukážeme si nejdříve, jak by svět vypadal bez něj. Dejme tomu, že chceme mít malou meteorologickou stanici a v pravidelných intervalech (třeba jednou za 5 minut) zaznamenat směr větru do paměti počítače. Postavíme si na zahradě otočný stožár s plechovou korouhvičkou (nebo punčochou), podle obrázku 1.1. Síla větru, působící zejména na ocas kohouta, natáčí korouhvičku i stožár v ložiskách vždy tak, že šipka stále ukazuje odkud vítr vane. (Velmi užitečné zařízení pro každou dobu). A nyní, jak tuto důležitou informaci dostaneme do paměti PC? Dole na stožáru je upevněno tzv. kódové kolo důmyslný obrazec na průhledném nosiči (sklo, čirý plast, filmová fólie) kruhového tvaru. Možná provedení kódových kol v binárním a Grayově kódu jsou na obrázcích 1. a 1.3. Nad toto kol umístíme zdroj světla (diodu LED) a pod Obr. 1.1 Příklad konstrukce zařízení pro snímání směru větru něj optická čidla (fotodiody, fototranzistory apod.) Počet snímačů je dán požadovanou přesností snímání úhlu natočení korouhve. V daném případě máme čtyři čidla, snímáme tedy čtyři bity, a tomu odpovídá 4 = 16 kombinací logických stavů. Celý obvod kola má 360º, snímáme tedy úhel natočení korouhve s teoretickou přesností 360 º : 16 =,5 º, není ale žádný problém nějaké bity přidat a přesnost tak výrazně zvýšit. Samotné kódové kolo je srdce snímače polohy s výstupem v příslušném kódu. Má čtyři kruhové dráhy (pro každý bit jednu) rozdělené do segmentů. Tmavé segmenty jsou neprůhledné, zastiňují tedy optická čidla pod sebou a ta indikují log. nuly. Pod průhlednými segmenty jsou působením procházejícího světla indikovány log. jedničky. Strana 11 (celkem 13)

Na obr. 1. jsou segmenty kódového kola uspoány podle binárního kódu. Bity s nejnižší váhou jsou nejblíže obvodu. Otáčením kola ve směru hodinových ručiček postupně získáváme na výstupech čidel všech 16 možných čtyřbitových binárních čísel. Při opačném směru otáčení se čísla vždy o 1 zmenšují. Na první pohled máme dokonalý snímač polohy, ale dále uvidíme, že tomu tak není. Obr. 1. Uspoání segmentů kódového kola podle binárního kódu. BIN 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 DEC 0 1 3 4 5 6 7 8 9 10 11 1 13 14 15 Je-li kódové kolo právě v naznačené poloze, mohlo by se zdát, že na výstupu bude číslo 0000 nebo 1111. Obě varianty by byly v poku, ale musíme vzít do úvahy i další faktory plynoucí z praktické realizace zařízení: jednotlivé optické snímací prvky se nám nikdy nemůže podařit zcela rovnoměrně nasvítit, usadit přesně do jedné přímky a také nikdy nebudou mít zcela shodnou citlivost na světlo dělicí linie mezi průhlednými a tmavými segmenty nebude nikdy dokonale rovná a rovnoběžná s linií čidel je prakticky nerealizovatelné, aby hranice rozhodnutí o logické úrovni na výstupu čidla byla přesně v polovině zastínění čidla, atd. Z uvedených skutečností vyplývá, že v blízkosti naznačené polohy kódového kola mohou být na výstupech optických čidel zcela náhodné logické úrovně a potažmo zcela libovolné binární číslo ze všech šestnácti možných. A to jsou velmi nepříjemné hazardní stavy! Snadno najdeme i další polohy s obdobným problémem. Jak tento nedostatek snímače polohy odstranit? Grayův kód má, oproti binárnímu a většině ostatních, jednu velmi zajímavou a důležitou vlastnost. Každé dvě sousední kombinace logických stavů se liší pouze v jednom bitu. Při přechodu z jedné kombinace do druhé se tedy žádná jiná na výstupech nemůže vyskytnout. Tím jsou odstraněny veškeré hazardní stavy při snímání polohy nejen našeho kódového kola. Nejdříve si ukážeme, jak se Grayův kód tvoří a proč se mu říká zrcadlový. 0 1 1 0 0 1 00 01 11 10 Začneme úplně stejně, jako doposud vždy. Nulou a jedničkou. Potom si pod jedničkou nakreslíme vodorovnou čáru vodní hladinu a podle ní zrcadlíme vše, co jsme napsali. Před každý ek nad hladinou doplníme nulu (je dutá, takže dobře plave) a pod hladinou jedničku. Strana 1 (celkem 13)

00 01 11 10 10 11 01 00 000 001 011 010 110 111 101 100 100 101 111 110 010 011 001 000 000 001 011 010 110 111 101 100 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000 ČÍSLICOVÁ TECHNIKA Hladinu necháme klesnout až dolů a znovu zrcadlíme vše, co jsme dosud napsali. A opět před všechny kombinace doplníme nad hladinou nulu a pod hladinou jedničku. Hladinu opět necháme klesnout až dolů a znovu zrcadlíme vše, co jsme dosud napsali. A znovu před všechny kombinace doplníme nad hladinou nulu a pod hladinou jedničku. Tak můžeme pokračovat, jak dlouho chceme. Poznámka: Dobrá mnemotechnická pomůcka k zrcadlení může být perlička ze školních sešitů, kterou jsem kdysi slyšel v nějakém silvestrovském pořadu: Na břehu rybníka seděla dívka a dojila krávu. Ale ve vodě se to zrcadlilo obráceně. Na obr. 1.3 jsou segmenty kódového kola uspoány podle Grayova kódu. Obr. 1.3 Uspoání segmentů kódového kola podle Grayova kódu. Gray 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000 DEC 0 1 3 4 5 6 7 8 9 10 11 1 13 14 15 Literatura 1. Antošová M., Davídek V.: Číslicová technika. KOPP, České Budějovice 003 Strana 13 (celkem 13)