ea3_adatabrazolas_pti2014_2015
Download
Report
Transcript ea3_adatabrazolas_pti2014_2015
Adatábrázolás
Csernoch Mária
http://www.inf.unideb.hu/~csernochmaria/bev_info/
Adatábrázolás számítógépen
• Az adat gépi formája bitsorozat, tárolásának
alapegysége a 8 bitből álló bájt
• Az adattárolás két módja
– gépi számábrázolás (műveletvégzés)
– kódolt ábrázolás
Számábrázolás
• Fixpontos
–
–
–
–
előjeles abszolút értékes
1-es komplemens
2-es komplemens
többletes
• Lebegőpontos
– 2-es
– 8-as
– 16-os
Előjeles fixpontos számok
• 8 biten ábrázolható különböző szám
– 28 = 256
• Melyek jelentsenek negatív értékeket?
Előjeles abszolút érték
• előjel bit
– legmagasabb helyiértéken (balról az első bit)
• 0: +
• 1: −
• maradék bitek a szám ábrázolására
– bináris
– szám abszolút értéke
• jellemzők
92 1
5 10
0 10 00 111100 1011
10
92 1
5 10
0 10 00 111100 10 1
10
– a nulla kétféleképpen
ábrázolható
51
B9
– a legkisebb szám: −127
legnagyobb
9–
21
5a10
92 1
5 10
00 1011 +127
1 10 00 1111szám:
1 10 0 1 1 0 01 1
10
10
9
D9
B
1-es komplemens
• előjel bit
– legmagasabb helyiértéken (balról az első bit)
• 0: +
• 1: −
• maradék bitek a szám ábrázolására
– bináris
– pozitív szám
• szám
– negatív szám
• szám −1-szerese (szám negáltja)
• jellemzők
2– 5a nulla
0 0 0 1 1 0 0ábrázolható
1
10 kétféleképpen
2– 5a legkisebb
1 1szám:
1 0 0 −127
110
10
– a legnagyobb szám: +127
25
10
0 0 0 110 0 1
1
25
10
9
11 1 0 0 1 1 0
6
E
2-es komplemens
• előjel bit
– legmagasabb helyiértéken (balról az első bit)
• 0: +
• 1: −
• maradék bitek a szám ábrázolására
– bináris
– pozitív szám
• szám
– negatív szám
• 1-es komplemens
• 1-es komplemens+1
2-es komplemens
25 10 00011001
25 10 0001
| 1001
1
25 10 11100110
25 10 1110
| 0110
E
25 10 11100111
9
1-es komplemens
6
25 10 1110
| 0111
E
1-es komplemens
2-es komplemens
7
2-es komplemens
2-es komplemens
• előjel bit
– legmagasabb helyiértéken (balról az első bit)
• 0: +
• 1: −
• maradék bitek a szám ábrázolására
– bináris
– pozitív szám
• szám
– negatív szám
• 1-es komplemens
• 1-es komplemens+1
• jellemzők
– a nulla egyértelműen ábrázolható
– a legkisebb szám: −128
– a legnagyobb szám: +127
2-es komplemens
• n-bites ábrázolás
– 1 bit: előjel
– (n−1) bit: szám
• adjuk össze a számot (E) az inverzével (Ē)
n 2
n 2
i 0
i 0
E E a i 2 i a i 2 i 2 n 1 1
n 2
E ai 2
i 0
i
E2
n 1
n 2
1 ai 2 i
i 0
n 2
E 2 n 1 1 a i 2 i
i 0
Bináris összeadás
3
00 11
6
0 1 10
2 0 0 10
3 1 10 1
5
0 10 1
3
00 11
3
00 11
3
11 0 1
6 10 10
2 11 1 0
3
5
1 10 1
10 1 1
Bináris összeadás
• bináris összeadás ugyanúgy jegyenként,
átvitellel mint a decimális esetben
• összeadási tábla:
–
–
–
–
0+0=0
0+1=1
1+0=1
1 + 1 = 0, átvitel: 1
• előjelváltás kettes komplemens kódban
+4 = 0100 1011 1100
−4 = 1100 0011 0100
Többletes számábrázolás
• a szám és a többlet összegét ábrázoljuk binárisan
– pozitív szám
– n bites szám esetén a többlet
• legmagasabb helyiértéken 1, a többi 0
• legmagasabb helyiértéken 0, a többi 1
• jellemzők (128 többlet esetén)
– a nulla egyértelműen ábrázolható
– a legnagyobb szám: +127
– legkisebb szám: −128
Feladat
Pozitív szám többletes ábrázolással
25
0 0 0 1 10 0 1
1 2 8 10 0 0 0 0 0 0
összeadás bináris számrendszerben
10 0 1 10 0 1
12 8
25
153 10 10011001 2
15 3
összeadás decimális számrendszerben, átváltás
Feladat
Negatív szám többletes ábrázolással
25
0 0 0 1 10 0 1
128
25
1 1 10 0 1 1 1
2 5 0 0 0 1 10 0 1
1 2 8 10 0 0 0 0 0 0
0 1 10 0 1 1 1
10 0 0 0 0 0 0
0 1 10 0 1 1 1
összeadás bináris számrendszerben
kivonás bináris számrendszerben
12 8
25
103 10 01100111 2
10 3
kivonás decimális számrendszerben, átváltás
Többletes számábrázolás
• a szám és a többlet összegét ábrázoljuk binárisan
– pozitív szám
– m bites szám esetén a többlet általában
• 2m−1
• 2m−1−1
• jellemzők (128 többlet esetén)
– a nulla egyértelműen ábrázolható
– a legnagyobb szám: +127
– legkisebb szám: −128
• megjegyzés
– ez a rendszer azonos a kettes komplemenssel, fordított előjellel
– használata: lebegőpontos számok kitevő részénél
BCD kód
• Binary Coded Decimal
• nem a számot, hanem a számjegyeket
ábrázoljuk
• minden decimális számjegyet négy biten
ábrázolunk
• negatív számok ábrázolása
– 9 vagy 10 komplemens kóddal
6892 10 0110 | 1000 | 1001 | 0010 BC D
BCD
30110 0000 | 0011 | 0000 | 0001
30110 1001 | 0110 | 1001 | 1000
9-komplemens
Valós számok ábrázolása
• fixpontos
• lebegőpontos
– számok normalizált alakban
N M p E
254 . 25 10 2 . 5425 10 2 0 . 25425 10 3
Valós számok ábrázolása
fixpontos
2n−1
előjel
20
egészrész
(k db)
törtrész
(m db)
bináris pont
(nincs ábrázolva)
• tárolókapacitás, bináris pont helye
– ábrázolandó számok nagysága
– ábrázolás pontossága
– speciális esetek
• ha a bináris pont a tároló jobb szélén van, akkor fixpontos egész
• ha a bináris pont a tároló bal szélén van, akkor fixpontos tört
Lebegőpontos számábrázolás
N M p E
karakterisztika
(8 bit)
kitevő előjele
előjel
(1 bit)
(1 bit)
• karakterisztika: hatvány kitevő
• mantissza: szám normalizált értéke
• normalizálás
– egészre normalizálás
– törtre normalizálás
mantissza
(23 bit)
Lebegőpontos számábrázolás
többletes karakterisztikával
• Ábrázoljuk oktális számrendszerben a 148(10
számot!
– előjel bittel kezdve
– a kitevő legyen 1 jegyű (3 bites), 4-többletes
– a törtrész 4 jegyű
148 10 224 8 0 . 224 8 3
0111
010
010
100
0
7
2
2
4
IEEE 754
karakterisztika (E)
(exponent)
előjel (S)
(8 bit)
(1 bit)
mantissza (M)
(23 bit)
hozzáértett vezető bit, bináris pont
(nincs ábrázolva)
•
•
•
•
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
N 1 2 E 127 1 .M
S