Download - Számábrázolás
Számábrázolás
Számábrázolás alapjai
➲ a digitális számítógépek a kettes számrend-szert használják a számábrázoláshoz
➲ egy helyiértéket 1 biten tárolnak (2 érték)➲ egy bájton 28 (256) különböző, előjel nélküli
szám ábrázolható (0-255-ig)➲ két bájton 216 (65536) különböző egész
szám ábrázolható (0-65535-ig)➲ csak pozitív egész számokra használható
Számábrázolási módszerek
➲ egész számok esetében általában előre rögzítik az ábrázolásra használt bájtok számát
ezt nevezzük fixpontos ábrázolásnak➲ negatív egész számok esetében több
lehetőségünk van az ábrázolásra: előjelbites ábrázolás kettes komplemens
Előjelbites számábrázolás
➲ a legmagasabb helyiértékű szám az előjelet jelenti
nem vesz részt a számképzésben➲ egy bájton ábrázolható tartomány: -127-127➲ probléma: 0-át kétféleképpen ábrázolhatjuk
(00000002 és 10000000
2)
ez a számolás automatizálását nehezíti
Pl.: 010110112 = 91
10
110110112 = -91
10
Kettes komplemens
➲ két lépésben képezhetjük egy szám kettes komplemensét:
1) minden bitet ellenkezőjére váltunk (egyes komplemens)
2) az ellenkezőre váltott számhoz hozzáadunk 1-et (a kettes számrendszerben történő összeadás szabályai szerint)
➲ előnye, hogy a 0-át csak egyféleképpen tároljuk (00000000
2)
➲ ábrázolható tartomány 1 bájton: -128-127, 2 bájton –32768-32767
➲ a kivonás egyszerűvé válik: a kivonandó számhoz hozzáadjuk a kettes
➲ komplemensét
Kettes komplemes (folyt.)
Példa:kiindulási szám: 010110112 (= 91
10)
1) minden bitet ellenkezőre váltunk: 101001002
1) hozzáadunk 1-et: 101001012 (= -91
10)
Összeadás kettes számrendszerben
➲ Összeadási lehetőségek:
0 1 0 1 1+0 + 0 + 1 + 1 10 1 1 10 +1 11
Kivonás kettes számrendszerben
➲ Példa: 155 10011011
2
- 72 010010002
1) A kivonandó (72) számot negatívvá alakítjuk (kettes komplemenssel):
10110111+ 1 10111000
Kivonás kettes számrendszerben (folyt.)
2) Az eredeti számot (155) és a kettes komplemest (-72) összeadjuk: (155 - -72 = 155+72)
10011011+ 10111000 101010011
➲ Ha az összeadás eredménye 9 jegyű lesz, akkor a felsőt le kell húzni, mivel az túlcsordulásnak számít (csak 8 biten ábrázolunk)
Lebegőpontos ábrázolás
➲ törtek ábrázolására➲ 10-es számrendszerben két részre osztható
a tört: egészrész tizedesrész a kettőt a tizedesvessző választja el
➲ kettes számrendszerben a törteket normál alakban írjuk fel
Normál alak
➲ tízes számrendszerben: 417=4,7*102
➲ kettes számrendszerben: 111:000001=0:111000001*211
az egész és a törtrész közötti jelet kettedespontnak hívjuk
képzése hasonlóan történik, mint a tízes számrendszerben
a hatványt is kettes számrendszerben kell felírni (211=23)
Lebegőpontos szám képzésenormál alakból
➲ Kiindulás: normál alak (0:111000001*211)1) a feleslegesen tárolandó számjegyek
lehúzása: 0:111000001*211
2) meg kell állapítani, hogy a normál alak képzésénél merre vittük a kettedespontot balra → 0 jobbra → 1
3) leírjuk egymás után a megmaradt számot, majd a balra/jobbra értékét, végül a kitevőt:
11000001011
Lebegőpontosan tárolt szám részei
11000001 0 11 mantissza karakterisztika (számalak) (előjel+kitevő)
Karakter és betű ábrázolása
➲ 1 bájton nemcsak számokat, hanem 256 különböző jelet is tárolhatunk
➲ PC-knél elterjedt az amerikai szabványos kódrendszer (ASCII)
ez kezdetben 7 bitet használt, ami 128 jelre volt elegendő
később további jelekre volt szükség (pl.: nemzeti karakterek), így 8 bitesre (1 byte) bővült
ASCII kódrendszer csoportjai
➲ vezérlőkarakterek➲ írásjelek➲ számjegyek növekvő sorrendben➲ angol ABC nagybetűi➲ angol ABC kisbetűi➲ néhány ékezetes karakter➲ grafikus jelek
ASCII kódrendszer jellemzői
➲ Ez a verzió nincs felkészítve minden nemzet nyelvére, ezért különböző kódtáblázatokat hoztak létre (magyar: 852-es kódtábla – Latin II.)
➲ A kódtáblák első 128 karaktere megegyezik, eltérés a felső 128 karakterben található
Unicode
➲ különböző írásrendszerek egységes használatát teszi lehetővé
➲ 16 biten (2 bájton) tárolja a jeleket, amibe minden nemzeti karakter belefér
➲ ügyeltek arra, hogy az ASCII kóddal készült szöveg Unicode-ban is olvasható legyen
➲ legelterjedtebb kódolási verziója az UTF-8➲ 1991-től kezdték használni