Kiegészítő kód (ábrázolása)

Seo Wiki - Search Engine Optimization és programozási nyelvek

Kiegészítő kód (kettes komplemens angol néha kettesével-komplement ..) - a leggyakoribb módja, hogy képviselje negatív egész számítógépek. Ez lehetővé teszi, hogy cserélje ki a művelet kivonás az összeadást, és ehhez az összeadás és kivonás azonos előjeles és előjel nélküli számok, mint egyszerűsítse az építészet a számítógépet. Kiegészítő kód egy negatív szám lehet beszerezni megfordításával a modul bináris szám (első felül), és a mellett, hogy az inverziós egység (második kiegészítés). Vagy kivonó száma nulla.

Kiegészítő kód (2-es komplemens) a bináris számot úgy kapjuk, hogy 1 a legkisebb helyiértékű annak kiegészítéseként 1. [1]

2 komplemens bináris számot úgy definiáljuk, mint a kapott érték kivonásával a szám a legnagyobb teljesítmény a két (2 N N-bites 2 komplemens). [2]

Bemutatjuk kiegészítő kód

Amikor a felvétel száma kiegészítő kód MSB jele kicsit. Ha értéke 0, a pozitív bináris számot rögzíteni a fennmaradó biteket. egybeesik a sor kódot. Ha a jel bit értéke 1, a fennmaradó biteket rögzítik negatív bináris számot alakítunk kiegészítő kódot. Ahhoz, hogy az érték, amely ellenkező előjelű, összes bitet, beleértve a jel, fordított, majd az eredményt adjuk a készüléket.

Binary 8 bites előjeles egész szám kettes komplemens bármely egész szám lehet tartományban -128 és 127. Ha az MSB nulla, akkor a legnagyobb egész szám, amely lehet jegyezni a fennmaradó 7 bit egyenlő 2 ^ 7-1, amely egyenlő 127.

Kód bináris (8 bites)

Átalakítása kiegészítő kód

Átalakítás forward kiegészítő kód végre az alábbi algoritmussal.

  1. Ha a szám rögzített előre kódot pozitív, akkor azt csatolni kell a vezető (jel) bit értéke 0, és ez az átalakulás befejeződik;
  2. Ha a szám rögzített közvetlen kódot, a negatív, akkor minden bit fordított. és hozzáadjuk a terméket 1. A kapott számot csatolt Sr. (jel) bit egyenlő 1.

Példa. -5 átalakítja negatív szám, rögzített közvetlen kódot, a kiegészítő. Közvetlen kódja -5 vett modulo:

Invert a biteket minden, ily módon fordított kódot.

Adjunk hozzá 1 az eredmény

Töltse ki a bal oldali jel egyjegyű

A fordított átalakulás használja ugyanazt az algoritmust. nevezetesen:

Invert a biteket minden, ily módon fordított kódot.

Adjunk hozzá 1 az eredmény, és ellenőrizze, hajtogatott egy kiegészítő kód

Kiegészítő kód decimális szám

Ugyanez az elv alkalmazható a számítógépes ábrázolása decimális szám: minden számjegy X kisülési helyébe 9-X, és a kapott számot hozzáadjuk 1. Például, ha a négy számjegyű szám van helyettesítve -0081 9919 (9919 + 0081 = 0000, az ötödik kisülési kiadja).

A végrehajtás a transzformációs algoritmus fordított kód

Előnyök és hátrányok

előnyök

  • Ugyanez regiszter lehet tárolni, mint n-bites pozitív szám, és a (n -1) bites előjeles egész, az általános formátum mindkét művelet összeadás, kivonás és balra léptető.
  • Sokkal kényelmesebb csomagolása számok az egybites mező.
  • Hiánya „mínusz nulla”.

hiányosságokat

  • További kód nem egyértelmű a kezdők számára.
  • A komplex formátumok (például a lebegőpontos vagy BCD), a legtöbb előnyt törlik.
  • Modul maximális száma nem egyenlő a legkisebb számú modulo. Példa: Az előjeles egész 1 bájtos. Maximális száma: 12710 == == 7F16 011111112. minimális száma: -12.810 == 8016, kiegészítő kód == 100 000 002, további kódot. Fennáll tehát tetszőleges számú ellenkező. Működés megfordítása további ellenőrzést igényel.

Példa szoftver konverziós

Ha az adatok olvasni egy fájlt vagy a memória területet, ahol tárolódnak céloperandus (pl WAVE file), szükséges lehet átalakítani a bájt. Ha az adatok a 8 bit, az szükséges, hogy az értékek 128-255 negatív volt.

C # .NET / C stílusban

személyes eszközök
SEO szolgáltatások
műszerek


Szolgált 0,317 mp.