információs technológia

Bináris számok decimális átváltása: egész és törtrész lépésről-lépésre

Számrendszerek alapjai

Feladat

Tekintsük a következő paraméterekkel adott N=10 bites (LE), fixpontos, 2-es komplemens rendszert: ha p=4. 
Ábrázolja a
– fenti szám formátumát, jelezve a tizedespont pontos helyét!

– Mekkora a legkisebb, illetve legnagyobb pozitív ábrázolható szám?

– Mekkora a legkevésbé negatív, illetve legnegatívabb ábrázolható szám?

– Hogyan ábrázolható a zérus?
– Mit definiál pontosan, és mekkora a ∆r értéke ebben a rendszerben?

– Nemcsak bináris, hanem decimális/tört értékekkel is adja meg a fenti paramétereket!

Általános megjegyzések:

    • N=10 bit: A rendszer 10 biten ábrázolja az értékeket.
    • 2-es komplemens: Az MSB (legjelentősebb bit) az előjelet jelöli:
      • 0: pozitív szám
      • 1: negatív szám.
    • p=4: Ez jelzi, hogy a tizedespont a bináris szám 4 bittel balra tolva helyezkedik el. Tehát a rendszer 6 egész részt (N-p) és 4 törtrészt képes ábrázolni.
    • LE (Little Endian): Az érték tárolása fordított sorrendben történik a memóriában, de a számolásnál ez nem játszik szerepet.

1. A formátum és a tizedespont helye

A bináris szám formátuma így néz ki:

MSB … 10. bit … 4. bit (törtrész eleje) … LSB (legkisebb helyiérték)
A tizedespont elhelyezkedése:
[6 egész rész | 4 törtrész]
Példa egy 10 bites számra a tizedesponttal: 101101.0101

2. Legnagyobb és legkisebb ábrázolható szám

Legnagyobb pozitív szám:

A legnagyobb pozitív szám akkor áll elő, ha az MSB (előjelbit) 0 és az összes többi bit: 1

Bináris alak: 0111111111

A tizedespontot figyelembe véve: 011111.1111
Átváltás: 2^0 x1 + 2^1×1 + 2^2×1 + 2^3×1 + 2^4×1 + 2^5×0 = 1+2+4+8+16+0 = 31
Törtrész:
2^-1×1 + 2^-2×1 + 2^-3×1 + 2^4×1 = 0,5+0,25+0,125+0,0625 = 0,9375
A teljes bináris szám: 31+0,9375 = 31,9375

A legkisebb pozitív szám: 

A legkisebb pozitív szám akkor áll elő, ha az MSB (előjelbit) 0, és csak a legkisebb helyiérték bitje 1:
Bináris alak: 0000000001

Tizedespontot figyelembe véve: 0,0001

Egész rész: 0

Törtrész: 0,0001 = 2^-1×0 + 2^-2×0 + 2^-3×0 + 2^-4×0 = 0,06253

3. Legnegatívabb szám:

A legnegatívabb szám akkor áll elő, ha az MSB 1, az összes többi bit: 0. A szám abszolút értéke a legnagyobb számot adja a 2-es komplemens rendszerben.

1’es komplemens: 100000.0000 → 011111.1111
Adjunk hozzá egyet: 011111.1111+0.0001 = 100000.0000
Átváltjuk: 2^5 = 32. Mivel az MSB 1, a szám negatív, tehát az értéke: –32,0

4. Legkevésbé negatív szám:

A legkevésbé negatív szám akkor áll elő, ha az MSB 1 és csak a legkisebb helyiérték bitje 1, a többi bit 0.
Bináris alak: 11111.1111
1’es komplemens: 000000.0000
Adjunk hozzá egyet: 000000.0000+0.0001 = 000000.0001
Átváltva: 0.0625. Mivel az MSB 1, a szám negatív, tehát az értéke: -0,0625

5. A nulla ábrázolása

Bináris alak: 0000000000
A tizedespont miatt: 000000.0000
Eredmény: 0.0

6. Mit definiál pontosan, és mekkora a ∆r értéke ebben a rendszerben?

A Δr a rendszer legkisebb különbsége két egymást követő ábrázolható szám között. Ez a legkisebb helyiérték változását jelzi a számrendszerben, azaz annak a lépésköznek az értékét, amely az egymás utáni ábrázolható értékek között van.
A számítás alapja: LSB értékének meghatározása

LSB (legkisebb helyiérték): az utolsó, legkisebb helyiértékű bithez tartozó érték a tizedespont után. A bináris számrendszerben az LSB helyiértéke a 2^-p, ahol:
– a p: a tizedespont utáni bitek száma (törtrész hossza)
– a p=4 azt jelenti, hogy a tizedespont után 4 bit található

A legkisebb helyiérték kiszámolása: 
A törtrész legkisebb helyiértéke: 
2^-p=2^-4 = 0,0625
Δr = 0,0625

 A legkisebb helyiérték változása a legutolsó bit (LSB) ki- vagy bekapcsolásával történik. Ezért a két egymást követő ábrázolható szám közti különbség pontosan megegyezik az LSB értékével. Ez a lépésköz határozza meg, hogy milyen pontossággal tudjuk az értékeket ábrázolni a fixpontos rendszerben.

Összegzés táblázatban:

 

Paraméter Bináris alak Tört érték Decimális érték
Legkisebb pozitív szám 000000.0001

116
0.0625
Legnagyobb pozitív szám 011111.1111

31+1516
31.9375
Legkevésbé negatív szám 111111.1111

116
-0.0625
Legnegatívabb szám 100000.0000 -32 -32.0
Nulla 000000.0000 0 0.0
Δr 0.0001

116
0.0625