Közvetlen kód

A közvetlen kód a fixpontos bináris számok számítógépes aritmetikai  ábrázolásának módja . Főleg nem negatív számok írására használják . Abban az esetben, ha közvetlen kódot használunk pozitív és negatív számokhoz, vagyis olyan számokhoz, amelyek írása magában foglalja a mínuszjel használatának lehetőségét (előjeles számok), a szám tárolt digitális bitjeit egy előjelbittel egészítjük ki .

Az angol irodalomban Sign and magnitude methodnak hívják .

Előjeles számábrázolás közvetlen kódban

Amikor számot írunk egy közvetlen kódba, a legjelentősebb bitet (legjelentősebb bitet) előjelbitté (jelbitté) deklaráljuk . Ha az előjelbit 0, akkor a szám pozitív , ellenkező esetben negatív . A fennmaradó számjegyekbe (amelyeket digitális számjegyeknek nevezünk) a szám modulusának bináris ábrázolása van beírva.

A bináris számok (beleértve az egész számokat és a vegyes törteket) kódolási funkciója a közvetlen kódban:

ahol  az előjelbit (jelbit) száma. Különösen a megfelelő bináris törtek (vagyis olyan számok, amelyek kielégítik az egyenlőtlenséget ) kódolásakor a kódoló függvény a következő alakot ölti:

A közvetlen kódban lévő szám értékét a következő képlet határozza meg:

ahol:

Amint az az utolsó képletből látható, a közvetlen kódban lévő előjelbitnek nincs bit súlya. Az aritmetikai műveletek végrehajtásakor ez szükségessé teszi az előjelbit külön feldolgozását a közvetlen kódban.

Példák

Decimális szám bináris szám Közvetlen bináris kód 8 bites jegyzet
0 0 0000 0000 pozitív nulla
-0 -0 1000 0000 negatív nulla
5 101 0000 0101
tíz 1010 0000 1010
-5 -101 1000 0101
-16 -10000 1001 0000
9/16 0,1001 0,100 1000
-9/16 -0,1001 1.100 1000
105/128 0,1101001 0,110 1001
-5/128 -0,0000101 1.000 0101

Közvetlen kódalkalmazások

A számítástechnikában a közvetlen kódot főleg nem negatív egész számok írására használják. Könnyen megszerezhető egy egész szám bármely más számrendszerben való ábrázolásából . Ehhez elég a számot kettes számrendszerré alakítani, majd a gép bitrácsának szabad számjegyeit nullákkal kitölteni.

Előjeles számokhoz használva azonban a közvetlen kódnak két hátránya is van.

A számok aritmetikai műveleteinek végrehajtása direkt kódban nehézkes: például még a különböző előjelű számok összeadásához is szükség van az összeadón kívül egy speciális „ kivonó ” blokkra, amelynek megvalósítási összetettsége azonos. mint a hagyományos összeadóé . Ezenkívül az aritmetikai műveletek végrehajtásakor az előjelbit speciális kezelést igényel, mivel nincs súlya. A "negatív nulla" feldolgozását is igényli. Így az előjeles számokon végzett aritmetikai műveletek közvetlen kódban bonyolultabb CPU-architektúrát igényelnek, és általában nem hatékonyak.

Az aritmetikai műveletek végrehajtásához sokkal kényelmesebb a kettes komplement kód .

Tartomány

-bites közvetlen kód ( digitális bitek és egy előjel) lehetővé teszi egész számok megjelenítését a tartományban .

A -bit közvetlen kód ( digitális bitek és egy előjel) lehetővé teszi a megfelelő bináris törtek megjelenítését a tartományban .

Lásd még

Jegyzetek

Irodalom