Calculateur de complément à deux

Saisissez un nombre signé, ou les bits d'un nombre, pour voir le motif qu'un ordinateur stocke. Les formes du complément à un et de la grandeur signée sont montrées à côté, pour comparer facilement les trois systèmes.

Gratuit Fonctionne dans votre navigateur Vérifié le mardi 10 novembre 2026

Un nombre signé comme -5, ou les bits d'un nombre en hexadécimal ou en binaire, comme FB ou 11111011.

Écrit sous forme

Résultat

Bits du complément à deux — Les bits que la largeur contient pour le nombre, par groupes de quatre.
Hexadécimal —
Valeur signée — Le nombre que ces bits représentent en complément à deux.
Valeur non signée —
Plage pour cette largeur —
Vérification — Indique si le nombre tient dans la largeur.
Formes comparées

Cet outil fonctionne dans votre navigateur. Ce que vous saisissez ne nous est pas envoyé.

Mode d'emploi

  1. Saisissez le nombre dans Nombre ou bits. Pour des bits, choisissez l'hexadécimal ou le binaire sous Écrit sous forme.
  2. Choisissez la Largeur : le nombre de bits que stocke l'ordinateur, 8, 16, 32 ou 64.
  3. Lisez Bits du complément à deux pour le motif stocké, et Formes comparées pour les deux autres systèmes.
  4. Si Vérification indique que le nombre ne tient pas, les bits affichés sont ceux que l'ordinateur stockerait à la place.

Comment un nombre négatif est stocké

Un ordinateur stocke un entier signé sur un nombre fixe de bits. En complément à deux, le bit de tête vaut −2^(n−1), et les autres bits s'additionnent comme d'habitude. Pour écrire −5 sur 8 bits, écrivez 5 sous la forme 00000101, inversez chaque bit, et ajoutez 1 : 11111010 + 1 = 11111011.

−5  →  00000101  →  11111010  →  11111011 (FB en hexadécimal)

Complément à un et grandeur signée

  • Le complément à un inverse chaque bit de la grandeur : −5 vaut 11111010.
  • La grandeur signée garde la grandeur et utilise le bit de tête comme signe : −5 vaut 10000101.
  • Les deux ont deux zéros. Tous les bits posés en complément à un, et un bit de signe seul en grandeur signée, valent −0.
  • Le complément à deux n'a qu'un zéro et une valeur négative de plus que de positives. C'est le système que la plupart des processeurs utilisent pour les entiers.

Plage et dépassement

Avec n bits, la plage du complément à deux va de −2^(n−1) à 2^(n−1) − 1 : de −128 à 127 sur 8 bits, et de −2 147 483 648 à 2 147 483 647 sur 32 bits. Une valeur hors de la plage se replie : 200 demande huit bits et se lit −56, car 11001000 vaut −56 en complément à deux.

Ce que l'outil ne couvre pas

  • L'arithmétique : l'outil montre comment un nombre est stocké, non le résultat de l'addition ou de la multiplication de deux nombres.
  • Les fractions décimales et les nombres à virgule flottante, qui ont leur propre format : voir le convertisseur IEEE 754.
  • Les langages qui signalent une erreur en cas de dépassement au lieu de se replier. L'outil montre le résultat replié, et le signale.

Exemple détaillé : −5 sur 8 bits

Saisissez −5 avec Écrit sous forme réglé sur décimal et Largeur sur 8 bits. Le motif du complément à deux est 11111011, soit FB en hexadécimal et 251 en nombre non signé.

Le même −5 dans les deux autres systèmes : le complément à un donne 11111010 et la grandeur signée 10000101.

Système Bits Hex Valeur
Complément à deux 1111 1011 FB -5
Complément à un 1111 1010 FA -5
Grandeur signée 1000 0101 85 -5
Non signé 1111 1011 FB 251

Questions fréquentes

Pourquoi les ordinateurs utilisent-ils le complément à deux plutôt qu'un signe moins ?

Un signe moins demanderait sa propre règle dans chaque circuit d'addition. En complément à deux, l'addition et la soustraction fonctionnent de la même façon pour les nombres négatifs et positifs, et il n'y a qu'un seul zéro.

Pourquoi la plage négative a-t-elle une valeur de plus que la plage positive ?

Zéro occupe l'un des 2^n motifs : les valeurs positives vont de 1 à 2^(n−1) − 1, et les négatives descendent jusqu'à −2^(n−1). Sur 8 bits, la valeur en plus est −128, qui n'a pas de partenaire positif.

Que signifie le dépassement dans cette page ?

Le nombre demande plus de bits que la largeur n'en a. La page montre les bits que la largeur contiendrait, et la ligne Vérification indique que la valeur ne tient pas. Par exemple, 128 sur 8 bits contient 10000000, qui se lit −128.

Pourquoi le calculateur utilise-t-il des entiers exacts pour 64 bits ?

Un nombre JavaScript n'est exact que jusqu'à 2^53, et les valeurs de 64 bits vont jusqu'à 2^64. La page utilise BigInt, si bien que chaque bit est conservé et que la limite −9 223 372 036 854 775 808 est affichée exactement.

Java utilise-t-il le complément à deux pour ses entiers ?

Oui. La spécification du langage Java définit ses types entiers en complément à deux : un int est donc 32 bits de complément à deux, et un long en est 64.

Sources

Chiffres et texte vérifiés pour la dernière fois le mardi 10 novembre 2026.

Nous utilisons des cookies nécessaires au fonctionnement du site. Avec votre accord, Google utilise aussi des cookies publicitaires pour afficher des annonces personnalisées. Si vous les refusez, vous voyez toujours des annonces, mais elles ne sont pas personnalisées.