logo

Sčítanie a odčítanie pomocou doplnku 1

V našej predchádzajúcej časti sme sa dozvedeli o rôznych doplnkoch, ako je doplnok 1, doplnok 2, doplnok 9 a doplnok 10 atď. V tejto časti sa naučíme vykonávať aritmetické operácie, ako je sčítanie a odčítanie pomocou doplnku 1. Sčítanie a odčítanie môžeme vykonávať pomocou doplnku 1, 2, 9 a 10.

Sčítanie pomocou doplnku 1

Keď sčítame dve binárne čísla, sú možné tri rôzne prípady:

Prípad 1: Sčítanie kladného čísla so záporným číslom, keď má kladné číslo väčšiu veľkosť.

Najprv vypočítajte doplnok 1 daného záporného čísla. Sčítajte s daným kladným číslom. Ak dostaneme end-around carry 1, pridá sa do LSB.

Príklad: 1101 a -1001

  1. Najprv nájdite doplnok 1 záporného čísla 1001. Ak teda chcete nájsť doplnok 1, zmeňte všetky 0 na 1 a všetky 1 na 0. Doplnok 1 k číslu 1001 je 0110.
  2. Teraz pridajte obe čísla, t.j. 1101 a 0110;
    1101+0110=1 0011
  3. Sčítaním oboch čísel dostaneme end-around carry 1. Tento end around carry pridáme k LSB 0011.
    0011+1=0100

Prípad 2: Pridanie kladnej hodnoty so zápornou hodnotou v prípade, že záporné číslo má vyššiu veľkosť.

Najprv vypočítajte doplnok 1 k zápornej hodnote. Zhrňte to kladným číslom. V tomto prípade sme nezvládli prenos na konci. Takže vezmite doplnenie výsledku 1, aby ste získali konečný výsledok.

Poznámka: Výsledkom je záporná hodnota.

Príklad: 1101 a -1110

  1. Najprv nájdite doplnok 1 záporného čísla 1110. Aby sme našli doplnok 1, zmeníme všetky 0 na 1 a všetky 1 na 0. Doplnok 1 čísla 1110 je 0001.
  2. Teraz pridajte obe čísla, t.j. 1101 a 0001;
    1101+0001= 1110
  3. Teraz nájdite doplnok 1 k výsledku 1110, ktorý je konečným výsledkom. Doplnok 1 k výsledku 1110 je teda 0001 a pred číslo pridáme záporné znamienko, aby sme mohli identifikovať, že ide o záporné číslo.

Prípad 3: Sčítanie dvoch záporných čísel

V tomto prípade najprv nájdite doplnok 1 oboch záporných čísel a potom oba tieto čísla doplnkov spočítame. V tomto prípade vždy dostaneme end-around carry, ktoré sa pridajú k LSB, a na získanie konečného výsledku berieme doplnenie výsledku 1.

Poznámka: Výsledkom je záporná hodnota.

Príklad: -1101 a -1110 v päťbitovom registri

  1. Najprv nájdite doplnok 1 k záporným číslam 01101 a 01110. Aby sme našli doplnok 1, zmeníme všetky 0 na 1 a všetky 1 na 0. Doplnok 1 k číslu 01110 je 10001 a 01101 je 10010.
  2. Teraz pridáme obe čísla doplnkov, t.j. 10001 a 10010;
    10001+10010= 1 00011
  3. Sčítaním oboch čísel dostaneme end-around carry 1. Toto end-around carry pridáme k LSB 00011.
    00011+1=00100
  4. Teraz nájdite doplnok 1 k výsledku 00100, ktorý je konečnou odpoveďou. Doplnok 1 k výsledku 00100 je teda 110111 a pred číslo pridajte záporné znamienko, aby sme mohli identifikovať, že ide o záporné číslo.

Odčítanie pomocou doplnku 1

Toto sú nasledujúce kroky na odčítanie dvoch binárnych čísel pomocou doplnku 1

  • V prvom kroku nájdite doplnok 1 subtrahendu.
  • Potom pridajte číslo doplnku s menovkou.
  • Ak máte prenos, pridajte prenos do jeho LSB. V opačnom prípade zoberte 1 doplnok k výsledku, ktorý bude záporný

Poznámka: Hodnota subtrahendu sa vždy odpočíta od minuendu.

Príklad 1: 10101 - 00111

Vezmeme 1 doplnok subtrahendu 00111, ktorý vyjde 11 000. Teraz ich zrátajte. takže,

10101+11000 = 1 01101.

Vo vyššie uvedenom výsledku dostaneme prenosový bit 1, takže ho pridajte k LSB daného výsledku, t. j. 01101+1=01110, čo je odpoveď.

Príklad 2: 10101 - 10111

Zoberieme doplnok 1 k subtrahendu 10111, ktorý vyjde 01000. Teraz pridajte obe čísla. takže,

10101+01000 = 11101.

Vo vyššie uvedenom výsledku sme nezískali nosný bit. Vypočítajte teda doplnok 1 k výsledku, t. j. 00010, čo je záporné číslo a konečná odpoveď.