Gépi számok
A gépi számábrázolásban az előjelet az összes számjegyet megelőző előjelbit jelzi, ami nulla, ha a szám pozitív, és egy, ha a szám negatív. Ezzel már a számok leírásakor maradékosztályos számábrázolásra térünk át, és műveleteinket maradékosztályokon végezzük.
A kettes számrendszerben csak 2 db jelet használunk: a 0-t és az 1-et. A nem negatív számok gépi ábrázolása megfelel a szokásos kettes számrendszerbeli ábrázolásnak. Ahhoz, hogy egy negatív tízes számrendszerben írt számot úgy ábrázoljuk, ahogy a gépben van, a szám előjel nélküli alakját át kell váltanunk 2-es számrendszerbe.
Példa
[szerkesztés]- 7/2 = 3, maradék: 1
- 3/2 = 1, maradék: 1
- 1/2 = 0, maradék: 1
így megkaptuk a szám 3 bináris értékét. Az adott szám típusától függően (a különböző programnyelvekben különböző típusok lehetségesek) a hiányzó helyi értékeket kipótoljuk 0-kkal:
- 00000111
Ezek után elvégezzük a bitenkénti negációt:
- 11111000
Majd hozzáadunk az így kapott értékhez 1-et:
- 11111000 + 1 = 11111001
ezzel megkaptuk az adott negatív szám gépi alakját.
A számolás helyessége bizonyítható azzal, hogy összeadjuk a pozitív számot a negatívval, és az eredmény nulla lesz, tehát a negatív szám a pozitív ellentettje.
A számítógépek általában kettes számrendszerben számolnak. Ha mégsem, akkor azt a megfelelő programnyelv biztosítja. Ekkor akár tízes számrendszerben is dolgozhat a gép, amiben a számjegyek reprezentációja eltérhet a jegyek kettes számrendszerbeli alakjától.
Következményei
[szerkesztés]Érdekes következmények adódnak ebből a számábrázolásból:
- A számítógép valójában maradékosztályokkal számol. Így két elég nagy pozitív szám összege negatív is lehet.
- A negatív számok nagyobbak lesznek, mint a pozitívak.
- Eggyel több negatív szám ábrázolható, mint pozitív.
- A nulla ábrázolható pozitív és negatív számként is. Általában a pozitív ábrázolást választják.
Források
[szerkesztés]- Stoyan Gisbert–Takó Galina: Numerikus módszerek I. 0. fejezet.