REPREZENTACE DAT. Principy počítačů I. Literatura. Literály. Typy dat. Literály. Čísla Instrukce. Znaky. Logické hodnoty

Podobné dokumenty
Principy cpypočítačůčů a operačních systémů

Principy počítačů I Reprezentace dat

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

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

Architektury počítačů

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

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

Mikroprocesorová technika (BMPT)

Algoritmy a datové struktury

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

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

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

Principy počítačů a operačních systémů

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

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

Reprezentace dat. INP 2008 FIT VUT v Brně

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

C2115 Praktický úvod do superpočítání

Čísla a číselné soustavy.

Datové typy a jejich reprezentace v počítači.

Tato tematika je zpracována v Záznamy přednášek: str materiál: PrikladyZobrazeniCisel.pdf

Úvod do programování 7. hodina

v aritmetické jednotce počíta

1. Chyby vstupních dat metody převedení úlohy na numerickou (řád použité metody) zaokrouhlovací reprezentace čísel v počítači

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

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

Informatika Datové formáty

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu

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

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

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

Pokročilá algoritmizace amortizovaná složitost, Fibonacciho halda, počítačová aritmetika

35POS 2010 Počítačové systémy 1 Úvod, jazyk C Doc. Ing. Bayer Jiří, Csc. Ing. Pavel Píša

Programování v jazyce C pro chemiky (C2160) 12. Specifické problémy při vývoji vědeckého softwaru

Číselné soustavy. Prvopočátky. Starověký Egypt a Mezopotámie. Již staří Římané

Floating Point. Jak je reprezentovaný a proč někdy nefunguje. 2. června 2013

MQL4 COURSE. By Coders guru -3 DATA TYPES. Doufám, že předchozí lekce SYNTAX se vám líbila. V té jsme se pokoušeli zodpovědět:

Vnitřní reprezentace dat

Úvod do informačních technologií

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

E. Pohyblivářádováčárka

VÝRAZY výrazy = operandy prokládané operátory, vyhodnocované podle priority operátorů

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

Úloha 1 Spojte binární obrazy na obrázku s hodnotami, které reprezentují.

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

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

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

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

BI-PA1 Programování a algoritmizace 1 Katedra teoretické informatiky

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Aritmetické operace a obvody pro jejich realizaci

Variace. Mocniny a odmocniny

Algoritmizace a programování

Nastavovací příručka pro snímače CCD

Struktura a architektura počítačů

ČÍSELNÉ SOUSTAVY PŘEVODY

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

Y36SAP - aritmetika. Osnova

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

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

BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky

LEKCE 6. Operátory. V této lekci najdete:

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

CODEWARE. Nastavovací příručka. pro snímače CipherLab 1500/1560/1562

UMÍ POČÍTAČE POČÍTAT?

PB002 Základy informačních technologií

Aritmetické operácie v rôznych číselných sústavách. Ľudmila MACEKOVÁ, KEMT-FEI-TUKE, sep. 2017

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

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

Číselné soustavy a převody mezi nimi

Aplikovaná numerická matematika

Zobrazení dat Cíl kapitoly:

Struktura a architektura počítačů

Elementární datové typy

Variace. Číselné výrazy

Převody mezi číselnými soustavami

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.

UNIVERZITA PARDUBICE. Fakulta elektrotechniky a informatiky. Vybrané problémy výpočtů na PC s pohyblivou řádovou čárkou Nomindalai Naranbaatar

Úvod do informačních technologií

Referenční příručka o čárovém kódu

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

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů.

ARITMETICKÉ OPERACE V BINÁRNÍ SOUSTAVĚ

4 Datové struktury. Datové struktury. Zobrazení dat v počítači

Základní pojmy. Program: Algoritmus zapsaný v programovacím jazyce, který řeší nějaký konkrétní úkol. Jedná se o posloupnost instrukcí.

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

KALKULÁTORY EXP LOCAL SIN

Java reprezentace dat, výrazy. A0B36PR1-Programování 1 Fakulta elektrotechnická České vysoké učení technické

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

Pohyblivářádováčárka

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

1. 1 P Ř I R O Z E N Á Č Í S L A

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

Pohled do nitra mikroprocesoru Josef Horálek

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

CODEWARE. Nastavovací příručka pro snímač CCD 1500

Dnešní téma. Oblasti standardizace v ICT. Oblasti standardizace v ICT. Oblasti standardizace v ICT

Reprezentace dat v informačních systémech. Jaroslav Šmarda

Operátory, výrazy. Tomáš Pitner, upravil Marek Šabo

B. Sčítání,odčítání adoplňkovýkód

Transkript:

Principy počítačů I REPREZENTACE DAT Literatura D.Goldberg: What Every Computer Scientist Should Know About Floating-Point Arithmetic IA-32 Intel Architecture Software Developer s Manual (Vol. Basic Architecture) There are only types of people in the world: those who understand binary, and those who don't. Typy dat Literály Literály Čísla Instrukce logické hodnoty znaky grafické symboly nečíselná data Logické hodnoty Znaky možno reprezentovat jediným bitem x x x x x x x x x x x x x x problémy s adresováním reprezentace celou datovou jednotkou EBCDIC ASCII UNICODE problémy s velikostí

EBCDIC 256 závazných znaků x.. x3f... speciální (řídící) znaky x4.. xff... tisknutelné znaky Mnoho volných pozic Abeceda není v jednom bloku ASCII b6 b5 b3 b2 b b b4 NUL DLE space @ P ` p SOH DC! A Q a q STX DC2 " 2 B R b r ETX DC3 # 3 C S c s EOT DC4 $ 4 D T d t ENQ NAK % 5 E U e u ACK SYN & 6 F V f v BEL ETB ' 7 G W g w BS CAN ( 8 H X h x HT EM ) 9 I Y i y LF SUB * : J Z j z VT ESC + ; K [ k { FF FS, < L \ l CR GS - = M ] m } SO RS. > N n ~ SI US / O _ o DEL 'G' ASCII KOI8-čs PC standard EAST8 Latin x (Latin 2) Windows codepage (25) ISO/IEC 8859 (8859-2) UNICODE součást normy ISO/IEC 646- (993) znak reprezentován vícebytovou sekvencí diakritika možnost uživatelských symbolů problém se staršími programy pozor na konkrétní implementaci UNICODE podpora národních abeced Latin Greek Cyrillic Hebrew Hiragana, Katakana... a množství dalších návrhy rozšíření Grafické symboly reprezentace spolu se znaky jazyky pro popis grafických symbolů 2

Polyadické Číselné soustavy i= n i= m Číslo A = a z i i reprezentujeme uspořádanou (m+n)ticí koeficientů a i Soustava může mít jeden nebo více základů (radix mumber system) V soustavě s jedním základem z jsou hodnoty z i určeny jako z i =z i m=... celá čísla, m>... zlomková část Číselné soustavy Nepolyadické římské číslice 648 MDCXLVIII 23 MMIII 9 IX, VIIII pro počítání nevhodné soustava zbytkových tříd (residue number system) definována k-tice různých základů prvočísel číslo vyjádřeno k-ticí zbytků po dělení příslušným základem Příklad: základy 2,3,: číslo devět zapsáno jako 9 jednoznačné pouze pro čísla menší než součin základů Přepis celého čísla do soustavy s jiným základem Zápis čísla A v soustavě o základu z: A= a n- z n- + a n-2 z n-2 + + a z + a z = (a n- z n-2 + a n-2 z n-3 + a )z + a = a + z (a + z (a 2 + + z(a n-2 + za n- ) )) V soustavě o základu z bude A zapsáno: A= b + z (b + z (b 2 + + z (b n-2 + z b n- ) )) A= z A/z + A mod z Převodní algoritmus číslo v soustavě z V soustavě o základu z dělit základem nové soustavy (z ) NE Výsledek dělení Výsledek je nula ANO Zbytek = b n Konec 5 do binární soustavy: 5 : 2 = 75 75 : 2 = 37 37 : 2 = 8 8 : 2 = 9 9: 2 = 4 4: 2 = 2 2: 2 = : 2 = Příklady 34 9 do sedmičkové soust.: 34 : 7 = 7 7 : 7 = 2 2 2: 7 = 2 34 9 = 22 7 Převod do desítkové soustavy Koeficienty zápisu čísla o základu z vynásobíme příslušnou mocninou z a sečteme: A a n- a n-2 a a A = a n- z n- + a n-2 z n-2 + + a z + a z Hornerovo schéma: A = ( (a n- z+ a n-2 )z + )z + a 5 = 2 3

Převod čísla se zlomkovou částí Hledáme koeficienty pro z i, -m i n- Celá část: popsána výše Zlomková část: podobně, ale základem nové soustavy násobíme. Převodní algoritmus zlomkové části zlomková část čísla v soustavě z V soustavě o základu z násobit základem nové soustavy (z ) zlomková část celá část = b n NE desetinná část je nula ANO Konec Příklad Příklad, převést do dvojkové soustavy:, * 2 =,2,2 * 2 =,4,4 * 2 =,8,8 * 2 =,6,6 * 2 =,2,2 * 2 =,4,, 2 Postup nemusí být konečný!,678 převést do dvojkové soustavy:,678* 2 =,356,356* 2 =,72,72* 2 =,424,424* 2 =,848,848* 2 =,696,696* 2 =,392,392* 2 =,784,784* 2 =,568,678, 2 Čísla Zobrazení přirozených čísel I přirozená čísla celá čísla racionální reálná převodem do binární soustavy a přímým uložením 9 229 4

Zobrazení přirozených čísel II Zobrazení celých čísel BCD Binary Coded Decimal Každá cifra desítkového zápisu čísla reprezentována pomocí 4 bitů horní 4 bity nevyužity nebo využity jinak Příklad: 93 Problémy aritmetika speciální instrukce neúsporné packed BCD se znaménkem číslo převedeno do binární podoby doplněno znaménkovým bitem Problém: dvě reprezentace nuly, složitější operace s posunutím k číslu se přičte konstanta reprezentující nulu posunuté číslo se převede do binární podoby dvojkový doplněk přirozená čísla se zobrazí přímo, záporná jako pseudopozitivní číslo Dvojkový doplněk Aritmetika ve dvojkovém doplňku Mějme číslo A. Jeho doplněk A = A + M = - A + M kde M je modul. Pro dvojkovou soustavu je M=2 n kde n je počet cifer zápisu čísla. A =- A = (-) + 2 n pro n=4: 2 - +9 ----- - +9 - Ve dvojkové soustavě:. zneguj bity 2. přičti 9 +9! 9 znaménkové rozšíření +8 +8-8 -8 Konverze délek Příklady zobrazení číslo se znaménkem s posunutím dvojkový doplněk +7 +6 +5 +4 +3 +2 + + - - -2-3 -4-5 -6-7 -8 --- 5

Ukládání vícebytových sekvencí Big-endian IBM 37, PDP-, Motorola, různé RISC, IA-64 Little-endian PDP-, VAX, Intel, IA-64 (nižší adresa=nižší význam) (Midle-endian ani little, ani big. Used of perverse byte orders such as 3-4--2 or 2--4-3, ocassionally found in the packed-decimal formats of minicomputer manufacturers who shall remain nameless. ) NUXI problem Zobrazení reálných čísel Čísla s pevnou řádovou čárkou Zobrazení celých čísel je speciální případ, kdy řádová čárka je zcela vpravo Posunutím řádové čárky směrem vlevo měníme rozsah zobrazovaných čísel a přesnost zobrazení Zobrazení reálných čísel Z jiných reprezentací se nejvíce ujala reprezentace s plovoucí řádovou čárkou ( floating point ): Je dán základ β a přesnost p Příklad:,9 pro β=, p=3... 9. -, pro β=2, p=24... (nelze přesně). 2-4 Floating point Zápis ve tvaru ±d.d d 2... d p- β e ( d i < β ) reprezentuje číslo ±(d + d β - +... + d p- β -p ) β e Floating point Zápis nemusí být jednoznačný:. -. Je-li d, reprezentace je nazývána normalizovanou Pro d = je reprezentace nazývána denormalizovanou Znaménko exponentu Znaménko mantisy Znaménko mantisy Znaménko mantisy Používaná zobrazení Řádová čárka exponentu ±± Exponent Mantisa ± Exponent (s posunem) Řádová čárka exponentu i mantisy Mantisa Řádová čárka mantisy. ± Exponent Mantisa (vždy normalizována) Řádová čárka exponentu i mantisy 6

IEEE Standard 754 single precision: β=2, p=24, e = 8 bitů double precision: β=2, p=53, e = bitů quadruple precision: β=2, p=3, e = 5 bitů Extended formats: single extended: β=2, p 32, e bitů double extended: β=2, p 64, e 5 bitů Correct use of this format is a nontrivial challenge to programmers IEEE Standard 754 přesný zápis v bitovém formátu ± Exponent Mantisa 3 3 23 22 ± Exponent Mantisa 79 78 64 63 IEEE Standard 754 IEEE Standard 754 IEEE Standard 854 Možnosti zápisu dle IEEE 754 povoluje β=2 a β= neurčuje konkrétní zápis nevyžaduje konkrétní hodnoty p pro single a double precision zavádí omezující podmínky možných hodnot p. exponent e min - e min - < e min,e max > e max + mantisa m = m m m = význam ±.m 2 e min.m 2 e ± e max + m xxx xxx NaN e max + m xxx xxx SNaN 7

operace + / REM NaN vznik NaN + (- ) /, / x REM, REM y x pro x< POZOR na chování konkrétního procesoru a kompilátoru!!! Operace s floating-point čísly Sčítání o odečítání A=M z exp B=M 2 z exp 2 Pro exp =exp 2 je A+B = (M + M 2 ) z exp Pro exp exp 2 je nutno: A nebo B denormalizovat provést výpočet normalizovat výsledek Pozor: sčítání a odečítání nejsou asociativní přetečení či podtečení (při denormalizaci i při výpočtu) Operace s floating-point čísly Násobení a dělení A=M z exp B=M 2 z exp 2 A.B = (M.M 2 ) z exp +exp 2 A/B = (M / M 2 ) z exp -exp 2 Pozor: operace v binární soustavě se zápornými čísly mohou vést k časově náročným postupům. Řešení Boothovo kódování. místo hodnot, jsou použity relativní hodnoty +,,- Příklad: násobení 63: - Vznik chyb Při výpočtu overflow přetečení underflow podtečení divide by zero dělení nulou invalid neplatná operace inexact nepřesný výsledek Vznik chyb Při konverzi scaling error zavedením stupnice truncation error zanedbáním části čísla rounding error zaokrouhlením (při pořizování) Problémy IEEE 754/854 ((2-3 + 3 ) 3 ) -3-3 na počítači pracujícím podle IEEE = - -3 8