Moins 128 : la borne basse sur 8 bits

-128 est le plus petit entier signé sur 8 bits : sa représentation est 10000000.

Représentation en complément à deux
1000 0000
En hexadécimal
0x80
Lu comme un nombre non signé
128
Plage sur 8 bits
de -128 à 127
Bit de signe
1 (négatif)

Le cas en détail

Il n'existe pas de +128 sur 8 bits, car le maximum est 127. La plage est asymétrique : il y a un négatif de plus que de positifs, parce que le zéro occupe une case du côté des nombres à bit de signe nul.

À retenir : En C ou en Java, prendre l'opposé de la valeur minimale redonne cette même valeur : un piège classique.

L'exemple chiffré

Valeurs utilisées dans ce cas (des exemples, pas des mesures) :

  • Entier à représenter : -128
  • Largeur du nombre : 8 bits (un octet)
Représentation en complément à deux
1000 0000
En hexadécimal
0x80
Lu comme un nombre non signé
128
Plage sur 8 bits
de -128 à 127
Bit de signe
1 (négatif)

Modifiez les champs ci-dessus pour adapter le calcul à votre situation : le résultat se met à jour tout de suite.

Comment ça se calcule

Un nombre positif s'écrit tel quel. Pour un nombre négatif, on ajoute 2^b (b étant le nombre de bits) : -42 sur 8 bits devient 256 - 42 = 214, soit 11010110. La plage va de -2^(b-1) à 2^(b-1) - 1, et le premier bit indique le signe.

Les résultats sont fournis à titre indicatif, sans valeur de conseil juridique, fiscal ou financier.

Pour aller plus loin