Les nombres sont représentés dans l'ordinateur par une configuration stricte de N bits, c'est pourquoi nous pouvons utiliser le complément à 2 pour les représenter.
Si le premier bit est à 0 on a un nombre positif, s'il est à 1 on a un nombre négatif.
Etant donné que le premier bit (bit de poids fort) est réservé pour le signe, il reste N-1 bits pour coder le nombre.
On a donc −2N − 1 valeur négatives possibles et 2N − 1 − 1 valeur positives possibles, on fait moins un car on représente aussi la valeur 0 (qui est habituellement considérée comme positive).
Un nombre binaire représenté sur N bits peut donc prendre une valeur de −2N − 1 à 2N − 1 − 1.
En représentation binaire signée on peut représenter les nombres dans l'intervalle [−2N − 1 ; 2N − 1 − 1]
Représentation sur 4 bits
Nombre de représentations possibles de 4-1 bits: 23= 8
Nombre de valeurs représentables avec une configuration de 4 bits: -23 à 23-1 =[-8;7]
Représentation sur 8 bits
Nombre de représentations possibles de 8-1 bits: 27= 128
Nombre de valeurs représentables avec une configuration de 8 bits: -27 à 27-1 =[-128;127]
Représentation sur 16 bits
Nombre de représentations possibles de 16-1 bits: 215= 32768
Nombre de valeurs représentables avec une configuration de 16 bits: -215 à 215-1 =[-32768;32767]
Représentation sur 24 bits
Nombre de représentations possibles de 24-1 bits: 223= 8388608
Nombre de valeurs représentables avec une configuration de 24 bits: -223 à 223-1 =[-8388608;8388607]
Représentation sur 32 bits
Nombre de représentations possibles de 32-1 bits: 231= 2147483648
Nombre de valeurs représentables avec une configuration de 24 bits: -231 à 231-1 =[-2147483648;2147483647]
Représentation sur 64 bits
Nombre de représentations possibles de 64-1 bits: 263= 9223372036854775808
Nombre de valeurs représentables avec une configuration de 24 bits: -263 à 263-1 =[-9223372036854775808;9223372036854775807]
Exemple 1
On désire coder la valeur -5 sur une représentation à 4 bits.
On va d'abord coder la valeur positive 5 et ensuite on prendra le CA2.
On a: 0101
On fait le CA2 de 0101 et on obtient: 1011
1011 représente la valeur -5.
On peut vérifier si la réponse est correcte en refaisant le CA2 de la valeur binaire de -5
Exemple 2
Quelle valeur est représentée par le nombre binaire 11010010 ?
Pour le savoir il faut déterminer sa valeur positive, on fait le CA2 et on obtient: 00101110.
C'est la valeur -46.
On peut vérifier si la réponse est correcte en refaisant le CA2 de la valeur positive.
Exemple 3
Comment représenter un nombre codé sur 4 bits en 8 bits ?
Prenons la valeur 1101, elle représente la valeur -3.
En effet: le CA2 de 1101 vaut 0011 donc 3 en positif.
Pour représenter cette valeur sur 8 bits il suffit de compléter vers la gauche avec le bit de poids fort, on a donc 1101 représenté par 11111101 sur 8 bits.
En effet: le CA2 de 11111101 vaut 00000011 donc 3 en positif.