logo

Addition et soustraction en utilisant le complément à 2

Dans notre section précédente, nous avons appris comment effectuer des opérations arithmétiques telles que l'addition et la soustraction en utilisant le complément à 1. Dans cette section, nous apprendrons à effectuer ces opérations en utilisant le complément à 2.

initialisation de la liste Python

Addition utilisant le complément à 2

Il y a trois cas différents possibles lorsque l'on additionne deux nombres binaires en utilisant le complément à 2, qui sont les suivants :

Cas 1 : Addition du nombre positif avec un nombre négatif lorsque le nombre positif a une grandeur plus grande.

Trouvez d’abord le complément à 2 du nombre négatif donné. Résumez avec le nombre positif donné. Si nous obtenons le report de fin 1, alors le nombre sera un nombre positif et le bit de report sera ignoré et les bits restants seront le résultat final.

Exemple : 1101 et -1001

  1. Tout d’abord, trouvez le complément à 2 du nombre négatif 1001. Ainsi, pour trouver le complément à 2, changez tous les 0 en 1 et tous les 1 en 0 ou trouvez le complément à 1 du nombre 1001. Le complément à 1 du nombre 1001 est 0110, et ajoutez 1 au LSB du résultat 0110. Donc le complément à 2 du nombre 1001 est 0110+1=0111
  2. Additionnez les deux nombres, c'est-à-dire 1101 et 0111 ;
    1101+0111=1 0100
  3. En additionnant les deux nombres, nous obtenons le report final 1. Nous supprimons le report final. La somme des deux nombres donne donc 0100.

Cas 2 : Ajout de la valeur positive avec une valeur négative lorsque le nombre négatif a une magnitude plus élevée.

Dans un premier temps, ajoutez une valeur positive avec la valeur complémentaire à 2 du nombre négatif. Ici, aucun report final n'est trouvé. On prend donc le complément à 2 du résultat pour obtenir le résultat final.

Remarque : La résultante est une valeur négative.

Exemple : 1101 et -1110

  1. Tout d’abord, trouvez le complément à 2 du nombre négatif 1110. Ainsi, pour trouver le complément à 2, ajoutez 1 au LSB de sa valeur de complément à 1 0001.
    0001+1=0010
  2. Additionnez les deux nombres, c'est-à-dire 1101 et 0010 ;
    1101+0010= 1111
  3. Trouvez le complément à 2 du résultat 1110 qui est le résultat final. Ainsi, le complément à 2 du résultat 1110 est 0001, et ajoutez un signe négatif avant le nombre afin que nous puissions identifier qu'il s'agit d'un nombre négatif.

Cas 3 : Addition de deux nombres négatifs

Dans ce cas, trouvez d’abord le complément à 2 des deux nombres négatifs, puis nous ajouterons ces deux nombres complémentaires. Dans ce cas, nous obtiendrons toujours le report final, qui sera ajouté au LSB, et en oubliant le résultat final, nous prendrons le complément à 2 du résultat.

Remarque : La résultante est une valeur négative.

Exemple : -1101 et -1110 dans un registre à cinq bits

  1. Trouvez d’abord le complément à 2 des nombres négatifs 01101 et 01110. Ainsi, pour trouver le complément à 2, nous ajoutons 1 au LSB du complément à 1 de ces nombres. Le complément à 2 du nombre 01110 est 10010 et 01101 est 10011.
  2. Nous additionnons les deux nombres complémentaires, c'est-à-dire 10001 et 10010 ;
    10010+10011= 1 00101
  3. En additionnant les deux nombres, nous obtenons le report final 1. Ce report est écarté et le résultat final est le complément 2.s du résultat 00101. Ainsi, le complément 2 du résultat 00101 est 11011, et nous ajoutons un complément négatif. signez devant le nombre afin que nous puissions identifier qu'il s'agit d'un nombre négatif.

Soustraction en utilisant le complément à 2

Voici les étapes suivantes pour soustraire deux nombres binaires en utilisant le complément à 2

  • Dans la première étape, trouvez le complément à 2 du sous-trahend.
  • Ajoutez le numéro du complément avec la fin du menu.
  • Si nous obtenons le report en additionnant les deux nombres, alors nous rejetons ce report et le résultat est positif, sinon nous prenons le complément à 2 du résultat qui sera négatif.

Exemple 1: 10101 - 00111

Nous prenons le complément à 2 du sous-trahend 00111, qui est 11001. Maintenant, additionnons-les. Donc,

10101+11001 =1 01110.

Dans le résultat ci-dessus, nous obtenons le bit de report 1. Nous supprimons donc ce bit de report et il reste le résultat final et un nombre positif.

Exemple 2 : 10101 - 10111

Nous prenons le complément à 2 du sous-trahend 10111, qui donne 01001. Maintenant, nous additionnons les deux nombres. Donc,

10101+01001 =11110.

Dans le résultat ci-dessus, nous n’avons pas obtenu le bit de report. Calculez donc le complément à 2 du résultat, c'est-à-dire 00010. C'est le nombre négatif et la réponse finale.