Complément à un
Le complément à un d'un nombre binaire est la valeur obtenue en inversant tous les bits de ce nombre (en permutant les 0 par des 1 et inversement). Le complément à un d'un nombre se comporte alors comme le négatif du nombre original dans certaines opérations arithmétiques.
D'un point de vue algébrique, qui est plus général, c'est l'opération qui consiste à complémenter un nombre écrit en base b sur n chiffres à bn−1. C'est-à-dire que le complément d'un nombre a s'obtient par (bn−1)−a. On remarque qu'en ajoutant 1 on obtient bn−a ce qui correspond à la méthode de calcul du complément à 2 exposant n.
Les deux méthodes présentées sont équivalentes pour les nombres binaires mais la vision algébrique généralise cette notion aux nombres non binaires.
Exemples
sur 4 bits
Sont représentées toutes les valeurs possibles entre -7 et +7.
Décimal + − 0 0000 1111 +0 et −0 sont VRAI si testés pour zéro, FAUX si testés pour non-zéro. 1 0001 1110 2 0010 1101 3 0011 1100 4 0100 1011 5 0101 1010 6 0110 1001 7 0111 1000
Complément à deux
Dans le système de complément à un, la valeur 0 a deux représentations : « +0 » et « -0 » (exemple sur 4 bits: 0000 et 1111), ce qui oblige à réaliser deux tests pour tester la valeur nulle d'un résultat. Afin de pallier ce défaut, on a introduit la représentation par complément à deux.
On obtient le complément à deux en ajoutant 1 au complément à un. On ignore alors la retenue sur le bit de poids fort.