320 likes | 427 Views
Adatábrázolás. Csernoch Mária http://www.inf.unideb.hu/~csernochmaria/bev_info/. karakterisztika (E) (exponent) (8 bit). mantissza (M) (23 bit). előjel (S) (1 bit). hozzáértett vezető bit, bináris pont (nincs ábrázolva). IEEE 754. bináris számrendszerben normalizált
E N D
Adatábrázolás Csernoch Mária http://www.inf.unideb.hu/~csernochmaria/bev_info/
karakterisztika (E) (exponent) (8 bit) mantissza (M) (23 bit) előjel (S) (1 bit) hozzáértett vezető bit, bináris pont (nincs ábrázolva) IEEE 754 • bináris számrendszerben normalizált • egészre normalizált • karakterisztika: 127 többletes • előjel • pozitív szám: 0 • negatív szám: 1
Feladat • S = 0 • E = 1000 1000 • M = .00010101001 • E = 1000 1000(2 = 136(10 • M = .00010101001(2 = .082519531(10 • Szám = 1. 082519531·29 = 554.25
nulla a szabály alapján nem ábrázolható a hozzáértett 1 egész miatt karakterisztika nulla mantissza nulla pozitív nulla, negatív nulla nem-normalizált szám (minden nem nulla, ami kisebb, mint a legkisebb normalizált szám) karakterisztika nulla mantissza nem nulla nincs hozzáértett egész végtelen karakterisztika minden bitje 1 mantissza minden bitje 0 + végtelen, − végtelen Not A Number (NaN) nem valós számok karakterisztika minden bitje 1 mantissza nem nulla pl. / IEEE 754
Nem-numerikus karakterek • a gyakorlatban legelterjedtebb a kiterjesztett ASCII (American Standard Code for Information Interchange) • angol ábécé kis- és nagybetűi • számjegyek • írásjelek • speciális vezérlő karakterek • 1 bájt = 1 karakter (összerendelés) • 128 • standard, 7 bit • +128 • extended • speciális, kódlapok • magyar: 852, magyar Windows: 1250 • probléma: gépek, programok közötti kommunikáció
Unicode ASCII standard, extended (Latin-1)
Unicode • elvi határ 231 • codespace: 010FFFF • az összes létező karakter ábrázolására • 1 karakter = 1 nemnegatív egész szám • 16 bites síkok • az utolsó négy hexadecimális számjegy a karakter síkon belüli pozíciója • a vezető számjegyek a síkot jelölik http://www.unicode.org/http://www.unicode.org/versions/Unicode6.0.0/
Unicode planes • Plane 0, Unicode alsó 16 bites tartománya, Basic Multilingual Plane (BMP) • alsó 128 érték: ASCII • alsó 256 érték: Latin-1 • modern világ leggyakrabban használt karakterei, ritka vagy történelmi karakterek • Plane 1, Supplementary Multilingual Plane (SMP) • ritkán használt karakterek: gót betűk, hangjegyek, dominó karakterek • Plane 2, Supplementary Ideographic Plane (SIP) • nagyon ritka CJK karakters • Plane 14, Supplementary Special-purpose Plane (SSP) • kimaradt formázási karakterek • Planes 15 and 16, Private Use Planes http://www.unicode.org/http://www.unicode.org/versions/Unicode6.0.0/
Unicode planes • plane 0 • Basic MultilingualPlane (BMP) • plane 1 • Supplementary Multilingual Plane (SMP) • historic scripts • plane 2 • Supplementary Ideographic Plane (SIP) • CJK Ideographs • plane 3–13 • unassigned • plane 14 • Supplementary Special-purpose Plane (SSP) • currently contains non-graphical characters (language tag characters) • plane 15–16 • Private Use Area (PUA) • character assignment by parties outside the ISO and the Unicode Consortium
Unicode Transformation Format • UTF-32 (32-bit Unicode Transformation Format) • teljes • fix hosszúságú kódok: karakterenként 4 bájt • egy-egy megfeleltetés • UTF-16 (16-bit Unicode Transformation Format) • U+0000U+FFFF intervallumon (BMP) 16 bites • U+1000010FFFF intervallum (supplementary planes) 16 bites párok • BMP-nek UTF-16 fix hosszúságú • UTF-8 (8-bit Unicode Transformation Format) • tömörebb • változó hosszúságú kódok • leghosszabb 6 bájt • 1 bájton tárolt kódjai az ASCII-nek felelnek meg http://www.unicode.org/http://www.unicode.org/versions/Unicode6.0.0/
Unicode érték – UTF-8 ábrázolás 00000000 00000000 00000000 0xxxxxxx 0xxxxxxx 00000000 00000000 00000xxx xxxxxxxx 110xxxxx 10xxxxxx 00000000 00000000 xxxxxxxx xxxxxxxx 1110xxxx 10xxxxxx 10xxxxxx 00000000 000xxxxx xxxxxxxx xxxxxxxx 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 000000xx xxxxxxxx xxxxxxxx xxxxxxxx 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 0xxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
ASCII Unicode érték – UTF-8 ábrázolásfeladat • Adjuk meg az ó betű Unicode értékét és UTF-8 kódját! • Unicode érték: 1111 0011(2 = F3(16 00000000 00000000 0000000011110011 110xxxxx 10xxxxxx 00000000 00000000 0000000011110011 110xxx11 10110011 00000000 00000000 0000000011110011 11000011 10110011
Logikai műveletek • a számítógép hardver felépítésében a legalsó szintet – a digitális logikai szintet – a kapuáramkörök alkotják • analóg alkatrészek • működésükkel a digitális (bináris) rendszer alapját képezik • digitális áramkörökben két jelszintet különböztetünk meg • alacsony (L) szint (0 és 1 Volt közötti feszültség) • hamis • 0 • magas (H) szint (2 és 5 Volt közötti feszültség) • igaz • 1
Logikai műveletek • alapműveletek • NEM • ÉS • VAGY • a kapuk kombinációjóból felépített áramkörök leírására algebra • változók és függvények csak 0 és 1 értékeket vehetnek fel • Boole-algebra • Gottfried Wilhelm Leibniz (1646–1716) • George Boole (1815–1864)
Logikai műveletek • logikai függvények • egy vagy több bemeneti változó • függvényérték csak a logikai változók értékeitől függ • a logikai műveletben szereplő bemenő és kimenő logikai változók értékei közötti összefüggést adja meg • megjelenítési formák • kapuáramkörök • igazságtáblák • halmazelméleti megfeleltetés
n változós logikai (Boole) függvény bemeneti értékei 2n különböző érték leírható egy 2n soros táblázattal minden sor függvényérték, kimeneti érték (Q) a bemeneti értékek (változók) különböző kombinációja érdemes a bemeneti értékeket növekvő sorrendben megadni Igazságtáblák
Logikai NEM művelet (NOT) teljes eseménytér A
Logikai ÉS művelet (AND) teljes eseménytér A B
Logikai VAGY művelet (OR) teljes eseménytér A A B
Logikai KIZÁRÓ VAGY művelet (XOR) A teljes eseménytér A A B B
Összeadás • összeadási tábla: • 0 + 0 = 0 • 0 + 1 = 1 • 1 + 0 = 1 • 1 + 1 = 0, átvitel: 1
Félösszeadó • két bináris szám – X és Y – egy-egy bitjét összeadja • keletkezett részösszeg: Sf • átvitel: Cf • nem veszi figyelembe az előző helyiértékről hozott átvitelt
Félösszeadó Xf Cf Yf Sf
Teljes összeadó • két félösszeadó megfelelő összekapcsolása • 1 bites • az előző helyiértékről származó átvitelt is figyelembe veszi
Teljes összeadó Xf Sf Yf Cf-1 Cf