Adatok ábrázolása számítógépen Pék Ágnes © V4.0/2009 Tovább
Tartalom Vissza Vége Tartalom Tovább A számítógép nyelve Kódolás Bit Byte Számrendszerek Kettes Váltás tízes szr.-be Váltás kettes szr. be Tizenhatos Adatábrázolás Szöveges Numerikus Egész Előjeles egész Valós Kép Hang Vissza Vége Tartalom Tovább
Hogyan lesz elektromos impulzus a legkülönbözőbb féle adatokból? A számítógépek nyelve A számítógépen való tároláshoz, feldolgozáshoz az adatokat megfelelő formára kell alakítani, kódolni kell valamilyen szabály (szabályok) alapján. Az adatok többfélék lehetnek jellegük szerint, pl. szöveges vagy számszerű (numerikus). Ezeknek a kódolási szabályaik különbözőek, sőt géptípusonként is eltérhet a „titkosírás”, amely szerint az átalakítás történik. A közös mégis mindegyiknél, hogy a feldolgozásra szánt adatokat a számítógép számára kell „emészthetővé” tenni, márpedig ez csak egyféle információval képes dolgozni: elektromos impulzusokkal. Az elektronikus eszközök alkatrészei arra reagálnak, hogy folyik-e rajtuk keresztül áram, vagy sem. Hogyan lesz elektromos impulzus a legkülönbözőbb féle adatokból? Vissza Tartalom Tovább Folytat
Kódolás A számítógépes adatábrázoláshoz először minden információt számszerűvé kell alakítani. Ha már csak számokkal állunk szemben, egyszerű a dolog: minden szám leírható kettes számrendszerben, ami azt jelenti, hogy összesen kétféle jelet használunk az ábrázolásához: az 1-et és a 0-t. azt, Ha az alkatrész feszültség alatt van, az 1-et jelent, ha pedig a feszültség nem ér el egy bizonyos küszöbértéket, akkor 0-t. Az információnak azt a legkisebb egységét, amely két különböző értéket vehet fel, bitnek nevezzük. Nagyobb számok ábrázolásához több bit kell. A számítástechnikában a bitnél nagyobb mértékegységek is használatosak. Alapvető adattárolási egység a byte, amely 8 bitet tartalmaz. Vissza Tartalom Tovább
Bit A bit az információ legkisebb mértékegysége, két állapotú jel. Ez a két állapot lehet pl.: 1 vagy 0 igen vagy nem (igaz vagy hamis) 0 V –hoz közeli vagy 5 V elektromos feszültség Egy bit egy igennel vagy nemmel megválaszolható kérdésre adott válasz információtartalma. Bitek (kellő hosszúságú) sorozatával bármilyen információ leírható, kódolható. 1 bit felhasználásával két különböző állapot ábrázolható (21). Több biten kettő annyiadik hatványa különböző állapot írható le, ahány bitet felhasználunk az ábrázoláshoz (2n). Lásd a mellékelt táblázatot! Vissza Kódolás Tartalom Tovább
Byte Nagyobb számok ábrázolásához több bit kell. A számítástechnikában a bitnél nagyobb mértékegységek is használatosak. Alapvető adattárolási egység a byte, amely 8 bitből álló sorozat. Mivel minden egyes bit két különböző állapotot vehet fel, a 8 bitnek 28, azaz 256 különböző állapota lehetséges. Ezek közül néhány: 0000 0000 1001 1010 1111 1111 Vissza Kódolás Tartalom Folytat Tovább
Az adattárolás mértékegységeinek váltószáma 1024, azaz 210 . A byte váltószámai De hogy pl. a kilo ilyen esetben pontosan mennyit is jelent, arról több évtizedes vita folyik, mivel minden más egyéb mértékegységrendszerben ezek a jelölések 1000-es váltószámot feltételeznek. Az IEC (nemzetközi elektrotechnikai bizottság) 1998-ban véglegesítette az új jelölésrendszert, amely szerint a kilo, mega stb. előtagok az 1000-es váltószámot jelentik, és bevezettek új elnevezéseket a hagyományos, 1024-es váltáshoz. Az adattárolás mértékegységeinek váltószáma 1024, azaz 210 . 1 Kilobyte 1024 byte 1 Megabyte 1024 Kbyte 1 Gigabyte 1024 Mbyte 1 Terabyte 1024 Gbyte SI (decimális) IEC (bináris) jel név érték K kilo 103 10001 Ki kibi 210 10241 M mega 106 10002 Mi mebi 220 10242 G giga 109 10003 Gi gibi 230 10243 T tera 1012 10004 Ti tebi 240 10244 P peta 1015 10005 Pi pebi 250 10245 E exa 1018 10006 Ei exbi 260 10246 Z zetta 1021 10007 Zi zebi 270 10247 Y yotta 1024 10008 Yi yobi 280 10248
A kettes és tizenhatos számrendszer A kettes számrendszer használatát az elektronikus számolóeszközök elterjedése indokolja. Az elektronikus számolóeszközök alkatrészeinek elkészítésénél ugyanis azt a legegyszerűbb megoldani, ha csupán arra reagálnak, hogy folyik-e áram rajtuk keresztül, vagy sem. E két állapot leírására alkalmas a kettes számrendszer, mivel ebben a számrendszerben csak két számjegy van, a 0 és az 1. A kettes számrendszerben felírt számokat megfigyelve azt tapasztalhatjuk, hogy jóval több számjegyet kell írnunk, mint a 10-es számrendszerben. A 10-es számrendszerrel viszont az elektronikus számolóeszközök nem boldogulnak. Ezeket a problémákat hidalhatjuk át 2 negyedik hatványa, a 16-os számrendszer használatával. Az elektronikus számolóeszközök továbbra is a 2-es számrendszerben számolnak, de a számok rövidebb leírására jól használható a 16-os számrendszer. Vissza Vissza Kódolás Kódolás Tartalom Tartalom Tovább Tovább
Kettes számrendszer A tízes számrendszerben egy szám ábrázolásához 10 jelet használunk, 0-9-ig. 2 7 5 2* 103 7* 102 0* 101 5* 100 A szám helyiértékeiből a fenti módon határozhatjuk meg az értékét. A kettes (bináris) számrendszerben a számok ábrázolásához mindössze 2 számjegyet használhatunk: az 1-est és a 0-t. Az egyes helyiértékek nem 10, hanem 2 hatványai. 1 1 1 1 1 1 1* 27 1* 26 0* 25 1* 24 1* 23 1* 22 0* 21 1* 20 A kettes és tízes számrendszer közti átváltások fortélyai megtekinthetők a mellékelt lapokon. Vissza Vissza Kódolás Kódolás Tartalom Tartalom Tovább Tovább
Hexadecimális (16-os) számrendszer Kettes (bináris) számrendszerben ábrázolva a nagy számok igen sok helyet foglalnak. Tömörebb írásmód érhető el a 16-os számrendszerben, amellett a 2-es és 16-os számrendszer között igen egyszerű a konverzió. Ezért a gépi ábrázolás szemléltetésére szokás használni. Tízes Kettes Tizenhatos Tízes Kettes Tizenhatos 1 2 3 4 5 6 7 0000 0001 0010 0011 0100 0101 0110 0111 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1000 1001 1010 1011 1100 1101 1110 1111 8 9 A B C D E F Átváltáskor a legkisebb helyiértéktől kiindulva négyes csoportokra osztjuk a bináris számot, és helyére írjuk a hexadecimális megfelelőjét. Pl.: 0100 0101 1101 0110 4 5 D 6 Vissza Vissza Kódolás Kódolás Tartalom Tartalom Tovább Folytat Folytat
Az adatok ábrázolása számítógépen A számítástechnikában használt megfelelő kódolási technikákkal bármilyen adat ábrázolható, legyen az utasítás, vezérlő jel, szöveg, szám, kép, hang, stb, Digitális: számszerűen ábrázolt Bináris: kétállapotó jelekkel (pl. kettes számrendszerben) ábrázolt Az adatokat tehát először is digitalizálni kell, eztán lehet bináris-sá alakítani. Vissza Tartalom Tovább
Digitalizálás Digitalizálás: folyamatos (analóg) információ (pl. fény, hang, hőmérséklet, elmozdulás stb.) számszerűen ábrázolhatóvá (digitálissá) alakítása. Az analóg mennyiségek két érték között elvileg bármilyen közbenső értéket felvehetnek. Digitális ábrázolás esetén az egymást követő, szomszédos értékek között mindig van olyan közbenső érték, ami nem ábrázolható. Például: a szkenner érzékelője a képpontok színét összetevőire, a három alapszínre bontja, ezek intenzitását mérve. Vagy: az egér mozgatása során az elmozdulás mértékét méri. Vissza Tartalom Tovább
Adatábrázoléási technikák A következő oldalakon néhány közismert, általánosan elterjedt kódolási rendszer alapelvei olvashatók, a különféle adattípusok ábrázolására: Szöveg (ASCII, UNICODE) Numerikus adatok Egész számok (fixpontos ábrázolás) Előjeles egész számok (kettes komplemens kód) Valós számok (lebegőpontos ábrázolás) Kép Hang Vissza Tartalom Tovább
Egy bitsorozatnak több jelentése is lehetséges Például 10010110 jelentése lehet: 128-nál nagyobb, 256-nál kisebb pozitív szám, ha előjelet nem ábrázoltunk. 7 bites negatív szám, ha kettes komplemens kóddal állunk szemben. Az is lehet, hogy a kis é betűt jelenti, ha ez a 8 bit egy ASCII kód. És még sok mást is jelenthet... A feldolgozás során egy adatról mindig a feldolgozó programnak kell tudni, hogy minek értelmezze a kódot ! Vissza Adatábrázolás Tartalom Folytat Folytat Tovább
Szöveges információ ábrázolása A szöveges információ jelekre bontható: betűkre, írásjelekre, szóközökre, esetleg számjegyekre. Ezeket összefoglalóan karakternek nevezzük. A karakterek kódolva, számként ábrázolhatók. Többféle kódrendszer létezik, amelyeket különböző géptípusokhoz fejlesztettek ki. A személyi számítógépeken ma általánosan használt kódrendszer az ASCII (American Standard Code for Information Interchange). Ennek segítségével egy byte-on (8 biten) 256 különböző jelet lehet ábrázolni. A UNICODE az egyik elterjedt informatikai megoldás a természetes nyelvekben megtalálható különböző írásjelek egységes kódtáblába foglalására. A jelenleg használt Unicode formák közül a legelterjedtebb az UTF-8, ami változó hosszúságú kódolással (8-64 bit) jeleníti meg a UNICODE jeleit. Vissza Adatábrázolás Tartalom Tovább Folytat
Az ASCII kódrendszer Nem árt tudni: Az ASCII kódrendszerben minden karaktert egy 8 bites szám képvisel. A kódrendszert eredetileg 7 bitesre tervezték. Ezzel 128 különböző jel ábrázolható (0-127). Ezek rögzített, szabványos kódok. Köztük vannak az angol ABC betűi, számjegyek, írásjelek, műveleti jelek. A 8. bit segítségével kapott újabb 128 kóddal (128-255) a nemzeti karakterkészleteket, grafikus jeleket, matematikai jeleket szokás ábrázolni. A nemzeti karakterkészletek eltérő volta, ill. bizonyos adatátviteli vonalak 7 bites kapacitása az oka, hogy az interneten küldött szövegből csak annak a bizonyos első 128 kódnak a célba érése biztos. Az úgynevezett 852-es kódkészlet a közép-európai nemzeti karak-tereket tartalmazza. Nem árt tudni: Vissza Adatábrázolás Tartalom Folytat Tovább
Egész számok ábrázolása Az egész számok ábrázolása ún. fixpontos ábrázolással történik. Az elnevezés azt jelenti, hogy a tizedespont helye fix, tehát nem kell jelölni. (Megállapodás szerint lehet 0, 1, 2, stb. tizedesjegy, egész szám esetén tehát nincs is, a képzelt tizedespont a szám legvégén van.) Ha nem fordulhat elő előjel, akkor egyszerűen a szám bináris (kettes számrendszerbeli) alakját használhatjuk. Az ábrázolandó szám nagyságrendjétől függ, hogy erre 1, 2, vagy esetleg még több byte-ot kell felhasználni. Vissza Adatábrázolás Tartalom Tovább
Előjel ábrázolása Előjeles számok esetén többféle kódolási rendszer is használatos: pl.a kettes komplemens ábrázolás, vagy a többletes ábrázolás. Ha előjelet is akarunk ábrázolni, azt is 0-val és 1-el kell kifejezni. Erre egyik módszer az ún. többletes ábrázolás, amikor is az ábrázolandó számhoz egy fix értéket (pl. 64, 128, stb.) hozzáadunk, és így csak pozitív számokkal kell dolgozni. A szám tényleges értékének megállapításakor természetesen ezt a többletet le kell vonni a számból. Másik, ennél elterjedtebb eljárás a kettes komplemens ábrázolás. Lényege, hogy az ábrázolandó számot kettő valamelyik hatványára egészítjük ki. Vissza Adatábrázolás Tartalom Tovább Folytat
Valós számok ábrázolása I. A valós számok ábrázolása az ún. lebegőpontos formában történik. Ennek megértéséhez ismerni kell a számok normál alakját. 10-es számrendszerben ez a következőt jelenti: 1273000 = 1,273 * 10 6 vagy 0,1273 * 10 7 0,001273 = 1,273 * 10 -3 vagy 0,1273 * 10 -2 Ezzel az írásmóddal tulajdonképpen a sok 0 leírását lehet megspórolni. Általánosan a jelölésmód: Mantissza * 10 karakterisztika Vissza Adatábrázolás Tartalom Folytat Tovább
Valós számok ábrázolása II. Pl. - 24 ½ , azaz -11000,1 egy lehetséges megoldás a gépi ábrázolásra (4 byte-on): Mantissza * 2 karakterisztika - 0,110001 * 2 +101 11000101 11000100 00000000 00000000 A karakterisztika határozza meg a szám nagyságrendjét. A mantissza tartalmazza a szám számjegyeit. Az 1. bit a mantissza előjelét jelenti. (0-pozitív, 1-negatív) A gépi ábrázolásban a mantissza is, a karakteresztika is bináris alakban jelenik meg, és 10 hatványai helyett 2 hatványai értendők. Vissza Adatábrázolás Tartalom Folytat Tovább
Képek digitalizálása A látható kép analóg információ. A képek számítástechnikai feldolgozásának első lépése a látvány számjegyekké alakítása, digitalizálása. Minden kép vizszintesen és függőlegesen képpontok (pixelek) sokaságából áll. Minden képpontra jellemző a színe. A szín megadható számszerűen, a három alapszín intenzitásával. A ma használatos eszközök több mint 16 millió színárnyalatot tudnak megkülönböztetni az RGB színmodell segítségével. Ha mindhárom alapszín teljes intenzitással világít, fehér színt kapunk. Ha mindhárom szín 0 intenzitással világít, fekete színt kapunk. Az, hogy egy eszköz hány különböző színt tud megjeleníteni, függ egy képpont színének tárolására szánt tárolóhely nagyságától. Pl. 24 bites színmélység esetén a 3 alapszín mindegyikének intenzitása 8 biten (1 bytet) írható le, tehát 0-255 közötti értéket vehet fel. Így 2553 (224,16,7 millió) különböző szín ábrázolható. Vissza Adatábrázolás Tartalom Tovább Folytat
Hangok digitalizálása A hangok a levegőben keletkező rezgések, ezeket fogja föl dobhártyánk. Ezek a rezgések számszerűen mérhetőek a frekvenciájukkal. A mikrofon a beérkező hanghullámokat elektronikus hullámokká alakítja. A hangszórók pontosan ellentétes módon működnek: az elektromos hullámokat alakítják vissza légrezgéssé. A hang digitalizálása során rendkívül sűrűn mintát veszünk a levegőrezgéséből: megmérjük, a frekvenciáját. Az így kapott értékekkel megfelelően sűrűn végzett mintavétel esetén a valósághűen leírható a hanghullám alakja. Minél sűrűbb a mintavétel, annál jobban hasonlít az eredmény az eredeti hangra, viszont annál nagyobb lesz a keletkező fájl kiterjedése. Vissza Adatábrázolás Tartalom Tovább Folytat
Ehhez a témakörhöz nem tartozik több diakép Vissza Tartalom Vége
Kettes számrendszerből tízesbe váltás 1 1 1 1 1 1 1* 27 1* 26 0* 25 1* 24 1* 23 1* 22 0* 21 1* 20 1 * 20= 1 0 * 21= 0 A szám 10-es számrendszerbeli értékét így kaphatjuk meg: 1 * 22= 4 1 * 23= 8 1 * 24= 16 0 * 25= 0 1 * 26= 64 + 1 * 27= 128 221 Vissza Számrendszerek Tartalom Folytat Tovább
Tízes számrendszerből kettesbe váltás A tízes számrendszerbeli számot kettővel osztjuk. A maradék lesz kettes számrendszerben a legkisebb helyiérték. Az osztás eredményét ismét kettővel osztjuk, a maradék lesz a következő helyiérték. Ezt addig ismételjük, amíg az eredmény 0 lesz. Pl: Az eredeti szám: 13 Eredmény Maradék 13 : 2 = 6 1 6 : 2 = 3 3 : 2 = 1 1 1 : 2 = 1 A kettes számrendszerbeli alak: 1 1 1 Vissza Kettes számrendszer Tartalom Folytat
Helyfoglalás Vissza Kódolás Tartalom
ASCII kódtáblázat Vissza ASCII kódrendszer ASCII kódrendszer Tartalom Tartalom Tartalom
Ehhez a témakörhöz nem tartozik több diakép Vissza Tartalom Vége
Kettes komplemens kód I. Egyike azoknak a kódolási módszereknek, amelyek segítségével az előjelek is kódolhatók. Ha a szám negatív, akkor a következőképpen képezhető a kettes komplemens alakja: Az ábrázolandó szám: - 57 1. lépés: a szám abszolút értékét bináris alakba írjuk: 1 2. lépés: elölről annyi 0-val egészítjük ki, hogy 1 byte vagy (ha az ábrázolandó szám nagyságrendje nagyobb) ennek egész számszorosa legyen a hossza. 1 1 3. lépés: minden bitet az ellentettjére váltunk. 4. lépés: 1-et hozzáadunk. + 1 1 Vissza Adatábrázolás Tartalom Tovább Folytat
Kettes komplemens kód II. Kettes komplemens kód értelmezésénél a negatív számok onnan ismerhetők fel, hogy az első bitjük 1. A pozitív számok első bitje 0. Ez úgy lehetséges, hogy pl. 8 bites ábrázolásnál csak 7 bitet használunk a szám abszolút értékének ábrázolására. A legelső bit az előjelet jelzi. 1 byte-on a legnagyobb ábrázolható pozitív szám a 127: 0111 1111 Pozitív számnak mindig 0 az első bitje. -127 ábrázolása: 1000 0000 + 1 127 bináris alakjának ellentettjéhez 1-et hozzáadunk: 1000 0001 Negatív szám első bitje mindig 1 . Vissza Adatábrázolás Tartalom Folytat Tovább
Kettes komplemens kód III. A kettes komplemens ábrázolás előnye, hogy az ilyen módon ábrázolt előjeles számok kódolt alakjának összege egyezik a számok összegének kódolt alakjával. 98 kettes komplemens alakja 8 biten: 0110 0010 -57 kettes komplemens alakja: + 1100 0111 A két bináris szám összege: 1 0010 1001 41 kettes komplemens alakja: 0010 1001 Ezt a két szám összegéből úgy kapjuk, hogy a 9. (túlcsorduló) bitet szám elejéről elhagyjuk. Vissza Adatábrázolás Tartalom Folytat Tovább
Ehhez a témakörhöz nem tartozik több diakép Vissza Tartalom Vége