En la nostra secció anterior, vam conèixer diferents complements com ara el complement a l'1, el complement a 2, el complement a 9 i el complement a 10, etc. En aquest apartat, aprendrem a realitzar les operacions aritmètiques com la suma i la resta utilitzant el complement a l'1. Podem realitzar sumes i restes utilitzant complements d'1, 2, 9 i 10.
Suma utilitzant el complement d'1
Hi ha tres casos diferents possibles quan sumem dos nombres binaris que són els següents:
Cas 1: Suma del nombre positiu amb un nombre negatiu quan el nombre positiu té una magnitud més gran.
Inicialment, calculeu el complement 1 del nombre negatiu donat. Suma amb el nombre positiu donat. Si obtenim el transport final 1, s'afegeix a l'LSB.
Exemple: 1101 i -1001
- Primer, trobeu el complement 1 del nombre negatiu 1001. Per tant, per trobar el complement 1, canvieu tot 0 a 1 i tot 1 a 0. El complement 1 del nombre 1001 és 0110.
- Ara, sumeu els dos nombres, és a dir, 1101 i 0110;
1101+0110=1 0011 - En sumar els dos nombres, obtenim l'extrem al voltant del transport 1. Afegim aquest extrem al voltant del transport a l'LSB de 0011.
0011+1=0100
Cas 2: Sumar un valor positiu amb un valor negatiu en cas que el nombre negatiu tingui una magnitud superior.
Inicialment, calculeu el complement 1 del valor negatiu. Suma-ho amb un nombre positiu. En aquest cas, no vam aconseguir el transport final. Per tant, agafeu el complement 1 del resultat per obtenir el resultat final.
Nota: la resultant és un valor negatiu.
Exemple: 1101 i -1110
- Primer trobeu el complement 1 del nombre negatiu 1110. Per tant, per trobar el complement 1, canviem tot 0 a 1 i tot 1 a 0. El complement 1 del nombre 1110 és 0001.
- Ara, sumeu els dos nombres, és a dir, 1101 i 0001;
1101+0001= 1110 - Ara, trobeu el complement 1 del resultat 1110 que és el resultat final. Així doncs, el complement 1 del resultat 1110 és 0001, i afegim un signe negatiu abans del nombre perquè puguem identificar que és un nombre negatiu.
Cas 3: Suma de dos nombres negatius
En aquest cas, primer trobeu el complement 1 dels dos nombres negatius i després sumem aquests dos nombres de complement. En aquest cas, sempre obtenim l'aportació final, que s'afegeix a la LSB, i per obtenir el resultat final, agafem el complement 1 del resultat.
Nota: la resultant és un valor negatiu.
Exemple: -1101 i -1110 en registre de cinc bits
- En primer lloc, trobeu el complement a l'1 dels nombres negatius 01101 i 01110. Per tant, per trobar el complement a l'1, canviem tot el 0 a 1 i tot l'1 a 0. El complement a l'1 del nombre 01110 és 10001 i 01101 és 10010.
- Ara, sumem els dos nombres de complement, és a dir, 10001 i 10010;
10001+10010= 1 00011 - En sumar els dos nombres, obtenim el transport final 1. Afegim aquest transport final al LSB de 00011.
00011+1=00100 - Ara, trobeu el complement 1 del resultat 00100 que és la resposta final. Per tant, el complement 1 del resultat 00100 és 110111, i afegiu un signe negatiu abans del nombre perquè puguem identificar que és un nombre negatiu.
Resta utilitzant el complement a 1
Aquests són els passos següents per restar dos nombres binaris utilitzant el complement 1
- En el primer pas, trobeu el complement 1 del subtraend.
- A continuació, afegiu el número de complement amb el minuend.
- Si teniu un transport, afegiu-lo al seu LSB. En cas contrari, pren el complement d'1 del resultat que serà negatiu
Nota: el valor de la resta sempre es resta del minuend.
Exemple 1: 10101 - 00111
Prenem el complement a 1 del subtraend 00111, que surt 11000. Ara, sumeu-los. Tan,
10101+11000=1 01101.
En el resultat anterior, obtenim el bit de transport 1, així que afegiu-ho al LSB d'un resultat donat, és a dir, 01101+1=01110, que és la resposta.
Exemple 2: 10101-10111
Prenem el complement 1 del subtraend 10111, que surt 01000. Ara, sumeu els dos nombres. Tan,
10101+01000 =11101.
En el resultat anterior, no vam obtenir el bit de transport. Calculeu, doncs, el complement 1 del resultat, és a dir, 00010, que és el nombre negatiu i la resposta final.