SZÁMRENDSZEREK SZÁMÁBRÁZOLÁS
Számábrázolás MENNYISÉG MÉRŐSZÁM MÉRTÉKEGYSÉG
A számrendszernek van egy alapszáma Ez a radix, jele:r, r >= 2 A számrendszerben ábrázolt szám jegyeinek száma i, ahol i pozitív, egész, nem nulla érték! Az ábrázolandó szám jegyei ji jelek, melyeknek van alaki értéke, és ez rendre ai Minden lehetséges i értékére a szám jegyeinek alaki értéke kisebb, mint a számrendszer alapja, azaz ai<r
A szám lejegyzett alakja ekkor a szám jegyei, a jelek sorban: (ji ji …ji ji)r A szám értéke ekkor a számjegyek alaki értékéből és a helyiértékből adódik: ai*ri + ai-1*ri-1 + … +a1*r1+a0
Példa: A szám: 56 198 A számrendszer alapszáma r=10(>2) A szám jegyeinek száma:5 = 0 Az ábrázolandó szám jegyei 5,6,1,9,8<r A szám lejegyzett alakja 56 198 A szám értéke: 5*104+6*103+1*102+9*101+8*100 56 198
Használatos számrendszerek az informatikában Tízes - Decimális Legelterjedtebb, általánosan is Alapja a 10, a számábrázoláshoz a 0,1,2,3,4,5,6,7,8,9 jegyeket használja Felhasználása az informatikában: BCD (Binary Coded Decimal) 5 6 1 9 8 0101 0110 0001 1001 1000
Kettes - Bináris A számítógépes jel ábrázolásnak leginkább megfelelő Segítségével könnyen kifejezhetünk bármit; Magas-alacsony feszültségszint zárt-nyitott áramkör Fény visszaverődik-nem verődik vissza…stb Alapja a kettő, használt jelek: 0 és 1 A számítógép mindent így tárol
Tizenhatos – Hexadecimális A byte szervezésű adatkezeléshez jobban illeszkedik Alapszáma a tizenhat, használt jelei: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Lejegyzés jelölése A tízes számrendszerbeli lejegyzés a leggyakoribb, ezért itt jelzés nincs A számrendszer alapszámát a szám lejegyzett alakjában jobb alsó indexként szokás szerepeltetni Pl.: 45 = 1011012(B) = 2D16(H) Szokás még a tizenhatos számrendszerbeli alak előtt a #, a h vagy a $ jelek valamelyikét használni a számrendszer jelzésére. Pl.: 45 = #2D
Átváltás a számrendszerek között Az átváltás alapja minden esetben a maradékos osztás Példa: 45 Tízes számrendszerbeli alak: 4*101+5*100 = 45
10 2 :2 MARADÉK 45 22 11 5 2 1 1 45 = 1011012 1 A maradékul kapott számjegyeket visszafelé felírva kapjuk a szám kettes számrendszerbeli alakját! 1 1
2 10 1011012 25 24 23 22 21 20 1 = = 1*25 + 0*24 + 1*23 + 1*22 + 0*21 + 1*20 = = 32 + 0 + 8 + 4 + 0 + 1 = 45
10 16 :16 MARADÉK 45 2 13 - D 45 =2D16 vagy h2D 2 A maradékul kapott számjegyeket visszafelé felírva kapjuk a szám tizenhatos számrendszerbeli alakját!
16 10 2D16 161 160 2 D =13 = = 2*161 + 13*160 = 32 + 13 = 45
Bináris számábrázolás A legkisebb kezelt érték a bit A ma használatos gépekben 8,16,32…stb. számú biteket kezelünk egységben. 8 bit helyiértékesen kezelve 1 byte
Számábrázolás Fixpontos (a bináris pont fix helyen, általában az utolsó pozíció utáni helyet jelenti. Így egész számokat adhatunk meg vele) Előjeles (negatív, nulla, pozitív) Abszolút értékes ábrázolás Kettes komplemens ábrázolás Többletes ábrázolás Előjel nélküli (0 vagy pozitív) Lebegőpontos (valós számokat ábrázolhatunk vele.) Normálalak N=m*2k S mantissza (m) K+128 1 bit 39 bit 8 bit
5. Számrendszerek (1.dia) 347,52=3*102+4*101+7*100,5*10-1+2*10-2 Egy decimális szám polinom alakja: 347,52=3*102+4*101+7*100,5*10-1+2*10-2 Egy számjegynek van alaki értéke és helyi értéke A szám értékét úgy kapjuk meg, hogy a szám- jegyek alaki értékének (A) és helyi értékének (K(n-1)) szorzatát összeadjuk. SZÁM = A1-n*K0-(n-1)
5. Számrendszerek (2.dia) 5.1. Kettes számrendszer (Bináris): Alapszáma 2 Számjegyeinek száma 2 (0,1) A legnagyobb számjegye 1 Átalakítás kettesből tízes számrendszerbe. 10011B=1*24+0*23+0*22+1*21+1*20 = 19D Átalakítás tízesből kettes számrendszerbe: 138D
5. Számrendszerek (3.dia) 5.2 .Tizenhatos számrendszer (Hexadecimális) Alapszáma 16 Számjegyeinek száma 16 (0 – 9, A-F) Legnagyobb számjegye az F (értéke 15) Átalakítás tizenhatosból tízes számrendszerbe: 5D3H = 5*162+D*161+3*160 = 1491D Átalakítás tízes számrendszerből tizenhatosba: 2351D
Konvertálás kettes számrendszerbe 138 :2 69 34 1 17 8 4 2 Ellenőrzés tízes számrendszerbe konvertálással: 27 26 25 24 23 22 21 20 1 128 64 32 16 8 4 2 1 1*128+0*64+0*32+0*16+1*8+0*4+1*2+0*1 = 138D
Konvertálás tizenhatos számrendszerbe Ellenőrzés tízes számrendszerbe konvertálással: 162 161 160 2351 :16 146 15 9 2 9 2 F 256 16 1 9*256+2*16+F*1 = 2351D 15D=FH