Toto je starší verze dokumentu!


09 - Reprezentácia čísiel a základné dvojkové aritmetické operácie v počítači

  • kód - vzájemně jednoznačné přiřazení mezi symboly dvou množin
  •  data reprezentujeme pomocí kódů, které můžeme zhruba rozdělit do dvou skupin:
    1. kódy pro vnější přenos dat, EBCDIC, ASCII, a jeho modifikace
    2. kódy pro vnitřní reprezentaci dat, jako doplňkový kód, BCD
  •  FP - čísla s pohyblivou řádovou
  •  FX - čísla s pevnou řádovou čárkou
  •  kódování znaků
    •  ASCII - 7 bit
      • pro výměnu dat mezi systémy
      • American Standard Code for Information Interchange
    • Latin - 2 (ISO 8859-2), 1250 Microsoft Windows, …
      • doplnění 8. bitu
      •  např česká abeceda, atd… - norma ISO/IEC 8859 (východní Evropa)
    •  UNICODE
      • 16 bitů (UTF-16)
      • později 32 bitů (UTF-32)
      •  “exotické“ abecedy
    • ALU realizována v nepolyadické soustavě je mnohem rychlejší jak v doplňkovém kódu ⇒ např. při sčítání není třeba pamatovat si carry (x nefunguje dělení) ⇒ dobré pro rychlou Fourierovu transformaci nebo pro digitální filtr
    • v ALU musí být konvertor z kódu zbytkových tříd do doplňkového kódu a naopak

Zobrazenie znakov

  • rôzne kódy reprezentujú jednotlivé znaky číslami bez znamienka - tzv. ordinálnymi hodnotami znakov
  • rôzne znaky musia byť reprezentované rôznymi číslami
  • písmeno väčšie v abecede musí byť reprezentované väčším číslom
  • číslice musia byť reprezentované ako BCD číslice na najnižších štyroch bitoch svojich ordinálnych čísel

Zobrazenie čísel v dvojkovej sústave v počítači

  • bit - binary digital - dvojková číslica
  • rozsah zobrazenia - interval ohraničený zľava najmenším a sprava najväčším zobraziteľným číslom
  • rozlíšiteľnosť zobrazenia - najmenšie (kladné) zobraziteľné číslo
  • presnosť zobrazenia - počet platných dekadických číslic, ktoré je možné zobraziť v danom pamäťovom priestore (hodnota nezávislá na veľkosti zobrazovaného čísla)
  • LSB - least significant bit - číslica najviac napravo (najmenej významná)
  • MSB - most significant bit - číslica najvac naľavo (najvýznamnejšia)

Zobrazenie čísel v pevnej rádovej čiarke

Používání kódů, jak je na obrázku, je třeba znát na státnice!

Reprezentace čísla 7

Zobrazenie kladných čísel (čísel bez znamienka)

  • pre k-bitový pamäťový priestor a kladné dvojkové číslo, ktoré má n miest vľavo a m miest vpravo od rádovej čiarky (k = n + m)platí:
    • rozsah zobrazenia = <0, (2^n - 2^(-m))>
    • presnosť zobrazenia = k*log10(2)

  • rozlíšiteľnosť zobrazenia = 2^(-m)
  • v súčasnej dobe sa v pevnej rádovej čiarke zobrazujú len celé čísla (m = 0, k = n), potom rozsah zobrazenia je daný intervalom <0, (2^n - 1)>, rozlíšiteľnosť má hodnotu 1

Zobrazenie čísel so znamienkom

  • nech x označuje zobrazované číslo a nech X označuje jeho obraz (číslo ukladané do pamäte)
  • informáciu o znamienku nesie najvyšší bit, preto sa nazýva znamienkový
  • ostatné bity nesú informáciu o hodnote čísla, preto sa nazývajú významové
  • Priamy kód:
    • X = x pre x patrí <0, 2^(n-1) - 2^(-m)>
    • X = 2^(n-1)-x pre x patrí ←(2^(n-1) - 2^(-m)), 0>
    • kladné číslo sa od rovnakého záporného čísla v priamom kóde líši len hodnotou najvyššieho bitu (0 pre kladné čísla, 1 pre záporné), existujú 2 obrazy čísla 0

  • Doplnkový kód:
    • X = x pre x patrí <0, 2^(n-1) - 2^(-m)>
    • X = 2^n + x pre x patrí ←2^(n-1), -2^(-m)>
    • kladné číslo sa od rovnakého záporného čísla líši o hodnotu najvyššieho bitu i hodnotu všetkých ostatných bitov
    • jednotkový doplnok:
      • dá sa spočítať negáciou jednotlivých bitov
      • kladná aj záporná nula
      • používa sa hlavne ako medzioperácia pri počítaní dvojkového doplnku

  • dvojkový doplnok:
    • prakticky sa číslo s opačným znamienkom získa inverziou všetkých bitov a aritmetickým pričítaním jednotky
    • nemá dve nuly
    • je nesymetrický - má o jednu viac záporných hodnôt ako kladných
    • predstavuje základ aritmetiky väčšiny číslicových systémov

  • Kód transformovanej nuly:
    • X = 2^(n-1) + x pre x patrí ←2^(n-1), 2^(n-1)-2^(-m)>
    • kladné číslo sa od rovnakého záporného v kóde transformovanej nuly líši o hodnotu najvyššieho bitu i hodnotu všetkých ostatných bitov
    • v tomto kóde sa číslo prakticky získa z čísla v doplnkovom kóde zmenou hodnoty najvyššieho bitu

Chyby zobrazení čísla FX

  1. chyba měření:
    • vzniká při pořizování čísla vlivem chyby metody měření
  2. chyba stupnice (scaling):
    • číselná soustava nemůže na konečném počtu míst vyjádřit přesně všechny hodnoty
      Chyba stupnice
  3. chyba zanedbáním (truncation = odseknutí) a zaokrouhlením (rounding)
    • používá se statistické zaokrouhlování ⇒ zaokrouhluje se k sudému číslu
      Chyba zaokrouhlováním

Zobrazenie BCD čísel

  • každá desiatková číslica je zobrazená samostatne štyrmi bitmi dvojkovej sústavy:
  • 586.248 = 0101 1000 0110.0010 0100 1000
  • je-li binární součet větší než 9, je třeba provést korekci ⇒ přičíst k výsledku číslo 6 (zjištěno na základě analýzy kódu)

Kódování 2 z 5

  • je neváhový kód, který kóduje informaci nadbytečným množstvím bitů, je tedy redundantní
  • redundantní ⇒ detekuje jednobitové chyby
  • při sčítání máme uloženy všechny kombinace v paměti - look up tabulka (rychlé, ale velká paměť, která není dostatečně využitá)

Vzpomeňte si, jak bylo v IPZ u SATA a DVI uveden kód 8b/10b ⇒ také byla méně bitová čísla kódována na více bitů.

Huffmanův kód

  • umožňuje optimálně vyřešit problém, jakým způsobem zakódovat znaky abecedy tak, aby častěji se vyskytující znaky byly zakódovány pomocí kratší binární sekvence
  • Huffmanovo kódování patří mezi kódy s proměnnou délkou (VLC - Variable Length Coding)
  • například formát jpeg, pkzip
  • dá se představit na Morseově abecedě ⇒ musí být jednoznačný

Huffmanův kód

Parametry kódu

  • průměrná délka značky - udělám průměr všech značek
  • střední dynamická délka značky - při sčítání délek každou délku vynásobím počtem výskytů
  • teoretická optimální délka značky - vzorec s logaritmama (nebudou snad chtít) ⇒ pamatuji si akorát, jak jsme to počítali na písemce a byla to dost otrava
  • redundance kódu - (dynamická-teoretická)/dynamická = nadbytečnost

Zobrazenie čísel v pohyblivej rádovej čiarke

  • X = (-1)SM.BE
    1. znamienko - S
    2. exponent - E - celé číslo, vyjadruje rád (počet číslic o ktoré sa posunie desatinná čiarka mantisy)
    3. mantisa - M - reálne číslo, vyjadruje hodnotu
    4.  základ - B - budeme brát 2

E: 5 bitů, M: 8 bitů, S: 1 bit, B = 2


1710 = 100012 = 10001 * 25

FP - 17

6553610 = 216 = 0,1 * 217

FP - 65536

Toto číslo by se na 14 bitů u FX nikdy nevešlo. Problém je s malými čísly ⇒ použije se lichý nebo sudý posuv. Zavede se BIAS (posunutí)

FP - BIAS

Čísla jdou zapsat více způsoby:

FP - unikátnost

Musíme nějak zobrazit nulu ⇒ IEEE 754 standard

IEEE 754

Aritmetické operácie:

  • základné aritmetické operácie (v obmedzenom pamäťovom priestore, k = n = 4), sledujeme prenosy/výpožičky z/do (C) a do/z (P) najvyššieho bitu:

Sčítanie:

  • dochádza k prenosom do vyššieho rádu
  • sledujeme prenos z a do najvyššieho bitu
  • keď sa výsledok nedá zobraziť v danom pamäťovom priestore, indikujeme to pretečením

sčítačky

Odčítanie

  • dochádza k výpožičkám z vyššieho rádu
  • sledujeme prenos z a do najvyššieho rádu
  • keď prenos z najvyššieho rádu != prenos do najvyššieho rádu, znamená to chybu a výsledok sa nedá zobraziť

Delenie

  • 2 výsledky - celočíselný podiel a zvyšok po delení
  • výsledok je vždy zobraziteľný
  • robí sa s kladnými operandmi, keď je jeden záporný tak sa výsledok nakoniec prevedie

Násobenie

  • môžeme násobiť absolútne hodnoty čísel a nakoniec doplniť znamienko, alebo násobiť priamo čísla so znamienkom
  • násobenie môže byť sekvenčné (postupne) alebo kombinačné (v jednom kroku):
    • sekvenčné násobičky
    • kombinačné násobičky
  • podľa typu operandu:
    • v pevnej rádovej čiarke
    • v plávajúcej rádovej čiarke

Princíp násobenia

  • majme 2 čísla: N-bitový násobiteľ x_(N-1)x_(N-2)...x_0 a M-bitový násobenec y_(M-1)y_(M-2)...y_y_0
  • súčin bude:
  • P = (\sum{j=0}{M-1}{y_j 2^i})(\sum{i=0}{N-1}{x_i 2^i}) = \sum{i=0}{N-1}{\sum{j=0}{M-1}{x_i y_j 2^(i+j)}}

Sekvenčná násobička

  • pri sekvenčnom násobení čísel A x B sa do prvej polovice spojených registrov PB pripraví násobiteľ B, do hornej polovice nuly, násobiteľ do registra A.
  • postup:
    1. najnižším bitom registra PB sa vynásobí násobenec A a pričíta sa k hornej časti registra PB, kde sa udržuje priebežný súčet dielčích súčinov.
    2. obsah registra PB sa posunie o jeden bit vpravo
    3. kroky 1, 2 vykonáme celkovo n-krát
  • výhoda - nízky počet hradiel
  • nevýhoda - nízka rýchlosť, n taktov na násobenie

Zdroj

Potvrzení

09
Celé jménoOK!!!
Jirka Hynek2011-05-10 11:15:08 
 1

Diskuze

Jirka Hynekgeorge, 2011/03/23 18:23

Zdarec, nevím, jestli ještě něco hodláš vkládat, každopádně chybí mi tu pojmy jako FP, FX, ASCII, UNICODE, (ne)polyadické soustavy, 2 z 5, střední dynamická délka značky, teoretická optimální délka značky, redundance kódu, IEEE 754, možná by se hodila i kapitola - kódy pro detekci a oprav chyb … To jsem si jenom otevřel sešit a koukal na poznámky INP.

Jirka Hynekgeorge, 2011/04/27 12:24

Jako koukám, že se doplnění asi nedočkám. Napsal jsem tu všechny věci, co jsem chtěl. Každopádně koukal jsem na ty aritmetický operace a je to hodně okrajově popsaný. Násobičky tam ani nejsou. Týká se to konkrétně těchto tří přednášek (ALU, MULT a DIV)

vagyvagabund, 2011/04/12 20:51

hodila by se mala kapitolka o hummingovu kodu, opravnem kodu, jesi si na to jeste pamatujes?. Jinak souhlasim s Jirkem, nepolyadicke soustavy se tam hodi, reprezentace znaku taky, …

Bettietest138.199.59.222, 2021/07/17 06:55

Hookup Girls Makes use of Totally free Affairs? An Excellent Horizontal Gain!

Free hookup girls singles online is the perfect solution if you're sick and tired of planning to night clubs and night clubs just to be prevented, or perhaps even worse, laughed at. I realize what it's like because I've been there. I was one and desperate back in the day time – I necessary a fresh companion – however i kept on attempting because I had not one other decision. If you're an individual man who wants to hookup with hot women without going to those locations the location where the girls are on your own, then this report might just change your life. It is going to make clear why courting on-line is the greatest choice if you're a guy who may be shy to technique a beautiful female inside a pub or club.

singlestest138.199.59.222, 2021/07/17 06:55

Hookup Girls Makes use of Totally free Affairs? An Excellent Horizontal Gain!

Free hookup girls singles online is the perfect solution if you're sick and tired of planning to night clubs and night clubs just to be prevented, or perhaps even worse, laughed at. I realize what it's like because I've been there. I was one and desperate back in the day time – I necessary a fresh companion – however i kept on attempting because I had not one other decision. If you're an individual man who wants to hookup with hot women without going to those locations the location where the girls are on your own, then this report might just change your life. It is going to make clear why courting on-line is the greatest choice if you're a guy who may be shy to technique a beautiful female inside a pub or club.

Vložte svůj komentář
 
temata/09-reprezentace_cisel/main.1303912809.txt.gz · Poslední úprava: 2011/04/27 16:00 autor: jasho
Recent changes RSS feed Debian Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki