Codul Reverse - o metodă de matematică de calcul, permițând scădeți un număr dintr-un alt folosind doar operarea pe lângă numerele naturale. Tehnica anterioară utilizată în calculatoare mecanice (mașini de adăugare). În prezent, utilizate în principal în calculatoare moderne.
cod binar Reverse n biți este întreg pozitiv format dintr-un cod de bit de semn (binar cifră 0), urmat de n - 1 bit reprezentarea binară a numărului modulului (pozitiv cod numeric invers coincide cu codul direct).
Exemplu. Reprezentarea binară a 5 este 101. Reverse de 10 biți număr binar 0000000101 este scris ca cinci.
Reverse n-biți cod binar întreg negativ este format dintr-un cod de bit de semn (cifră binară 1), urmat de n - 1-bit număr binar care reprezintă n inversat - reprezentarea 1-bit din numărul modulului. Trebuie remarcat faptul că, în scopul de a schimba semnul suficient de a inversa toate rândurile sale ignorind semnul există o descărcare sau informații.
Exemplu. Reprezentarea binară a numărului 5 este 101, 10 biți binar reprezentarea - 0000000101. număr binar de 10 biți Reverse 1111111010 este -5.
Pentru a converti numerele negative în funcționare inversare pozitiv aplicat prea. Aceste coduri inverse sunt ușor de utilizat. [1] Ca dezavantaj trebuie notat că codurile binare inverse sunt două coduri sunt numerele 0, 0000000000 și de „zero negativ“ 1111111111 (codurile afișate inverse de 10 biți) „pozitive zero“. Acest lucru conduce la o anumită complicație a operației de însumare. Prin urmare, a trecut ulterior codurile de înregistrare suplimentare numere întregi semnate.
cod de retur n-biți permite reprezintă numere de la - 2n - 1 + 1 la + 2n - 1 - 1.
Cod adițional - cel mai comun mod de a reprezenta numere întregi negative în calculatoare. Acesta vă permite să înlocuiască funcționarea scădere în funcționarea plus, și de a face adunarea și scăderea la fel pentru numerele semnate și nesemnate decât simplifica arhitectura calculatorului. Codul adițional al unui număr negativ poate fi obținut prin inversarea numărului modulului binar (prima adăugare) și adăugarea la unitatea de inversare (a doua adăugare), sau prin scăderea numărului de zero.
Cod suplimentar (complement 2 a) din numărul binar obținut prin adăugarea de 1 la cel mai puțin important de complement la 1.
număr binar complement 2 este definit ca valoarea obținută prin scăderea numărului de cea mai mare putere a două (de la 2N la complement N-bit 2 a).
Introducerea codului adițional
La înregistrarea numărului de cod suplimentar MSB este un pic semn. În cazul în care valoarea sa este 0, ceilalți biți înregistrate număr binar pozitiv, care coincide cu codul direct. Dacă numărul este înregistrat în termen este negativ, numărul tuturor biți sunt inversate și se adaugă la produsul 1. La numărul rezultat este adăugat Sr. (semn) bit egal cu 1.
Binar pe 8 biți, semnat număr întreg în complement față de doi poate fi orice număr întreg în intervalul -128-127. Dacă MSB este zero, atunci cel mai mare număr întreg care poate fi înregistrată în 7 biți rămași este egal cu 27 - 1, adică 127.
Conversia codului adițional
Conversia numărul de cod suplimentar înainte implementat de următorul algoritm.
· În cazul în care numărul înregistrat în codul transmite este pozitiv, atunci este atașat la senior (semnul) bit egal cu 0, iar în această transformare se termină;
· Dacă numărul înregistrat în codul transmite este negativ, numărul tuturor biți sunt inversate și se adaugă la produsul 1. La numărul rezultat este adăugat Sr. (semn) bit egal cu 1.
Codul suplimentar pentru numerele zecimale
Același principiu poate fi utilizat în reprezentarea pe calculator a numerelor zecimale: pentru fiecare evacuare cifră X se înlocuiește cu 9-X, și numărul rezultat se adaugă la 1. De exemplu, atunci când se utilizează un număr de patru cifre este înlocuit cu -0081 9919 (9919 + 0081 = 0000, a cincea descărcare ejectat).
· Același registru poate fi stocat ca un număr de n biți pozitiv, și (n-1) -bit semnat întreg, cu formatul general pentru ambele operații de adunare, scădere și deplasare la stânga.
· Ambalarea mai convenabilă a numerelor în câmpuri de biți.
· Lipsa de "zero minus".
· Codul adițional nu este evident pentru incepatori.
· În formate complexe (cum ar fi punctul sau BCD plutitoare), cele mai multe beneficii sunt anulate.