Aller au contenu

Calculateur binaire

Saisissez deux nombres binaires et obtenez la somme, la différence, le produit ou le quotient — avec les retenues, les emprunts, les produits partiels et les étapes de division posée, colonne par colonne. Passez en mode bit à bit pour appliquer ET, OU, OU exclusif, NON, décalages et rotations sur 4 à 128 bits. Gratuit, sans inscription, et rien ne quitte votre navigateur.

Type d'opération

Chiffres binaires uniquement, avec un signe moins facultatif en tête. Les espaces et les tirets bas sont ignorés, donc 1011 0110 est accepté.

Résultat

1 0010

Binaire

18

Décimal

12

Hexadécimal

22

Octal

5 bits

Longueur

Calcul détaillé

Addition en colonnes avec retenues
Ligne43210
Retenue entrante11010
A01101
B00101
Somme10010

Comment utiliser le calculateur binaire

  1. 1. Choisissez le type d'opération. Arithmétique additionne, soustrait, multiplie ou divise. Bit à bit agit sur les bits individuels de motifs de largeur fixe.
  2. 2. Saisissez vos nombres. N'utilisez que 0 et 1. Un signe moins en tête, un préfixe 0b, des espaces et des tirets bas sont acceptés : 1011 0110 se lit comme un seul nombre.
  3. 3. Choisissez une largeur (bit à bit uniquement). NON, décalages et rotations n'ont pas de sens sans largeur ; le calculateur en demande donc une : 4, 8, 16, 32, 64 ou 128 bits.
  4. 4. Lisez le résultat et le calcul. La réponse apparaît en binaire, en décimal, en hexadécimal et en octal, avec le calcul en colonnes en dessous.

Comment fonctionne l'addition binaire

L'addition binaire suit les mêmes règles de colonnes que l'addition décimale, mais une colonne déborde à 2 au lieu de 10. Additionnez les deux bits d'une colonne et la retenue éventuelle venue de droite. Si le total vaut 0 ou 1, écrivez-le. S'il vaut 2 ou 3, écrivez le bit de poids faible (0 ou 1) et reportez 1 dans la colonne suivante.

Les quatre cas d'une colonne
Total de la colonneBit écritRetenue sortante
0 + 0 + 0 = 000
1 + 0 + 0 = 110
1 + 1 + 0 = 10 (2)01
1 + 1 + 1 = 11 (3)11

Prenez 1101 (13) plus 101 (5). Le calculateur complète les deux nombres sur cinq colonnes et montre la retenue arrivant dans chacune — 11010, de gauche à droite — ce qui donne 10010, soit 18. La ligne des retenues est celle qu'on oublie le plus souvent lorsqu'on additionne à la main.

Soustraction, multiplication et division

La soustraction fonctionne à l'envers : lorsqu'une colonne nécessite 1 − 1 − 1 ou 0 − 1, elle emprunte 1 à la colonne de gauche, qui vaut ici 2. 1000 − 0011 montre un emprunt se propageant sur trois colonnes et aboutit à 0101 (8 − 3 = 5). Lorsque A est plus petit que B, le calculateur soustrait le plus petit du plus grand et donne au résultat un signe moins.

La multiplication consiste en décalages et additions. Chaque 1 du multiplicateur apporte une copie du multiplicande décalée vers la gauche selon la position de ce bit, et chaque 0 n'apporte rien. Pour 1011 × 101 (11 × 5), les 1 se trouvent aux positions 0 et 2 : les produits partiels sont donc 1011 et 101100, et leur somme est 110111 — soit 55.

La division est une division posée dont l'étape d'estimation est très simple. Abaissez un bit du dividende à la fois ; si le diviseur tient dans ce que vous avez, soustrayez-le et écrivez 1 au quotient, sinon écrivez 0. 1100100 ÷ 111 (100 ÷ 7) donne un quotient de 1110 (14) et un reste de 10 (2). Avec des opérandes négatifs, le quotient est tronqué vers zéro et le reste prend le signe de A, comme en C, Java et JavaScript.

Opérations bit à bit sur une largeur choisie

Opérations bit à bit à deux entrées
ABETOUOU exclusifNON-ETNON-OUNON-OU exclusif
00000111
01011100
10011100
11110001

Avec 1100 et 1010 sur 4 bits, ET donne 1000, OU donne 1110 et OU exclusif donne 0110. NON inverse chaque bit dans la largeur : le même 1100 devient 0011 sur 4 bits, mais 11110011 sur 8 bits — c'est pourquoi la largeur compte.

Un décalage à gauche de n déplace chaque bit de n places vers le haut et complète par des zéros ; les bits qui sortent en haut sont perdus, et le calculateur les liste. Un décalage logique à droite complète par des zéros. Un décalage arithmétique à droite recopie le bit de poids fort, de sorte qu'un nombre négatif reste négatif : 10110110 décalé de 2 vers la droite donne 00101101 en logique, mais 11101101 (−19) en arithmétique. Les rotations réinjectent les bits qui sortent d'un côté de l'autre côté, si bien que rien n'est perdu.

Pas de dépassement en mode arithmétique

L'arithmétique est ici exacte quelle que soit la longueur : 11111111 + 1 vaut donc 100000000, et non 0. Le matériel réel conserve un nombre fixe de bits et reboucle. Pour voir ce comportement — et les plages signées qui vont avec — utilisez le Calculateur de complément à deux.

Erreurs courantes

  • Oublier la retenue dans la colonne de gauche. Additionner deux nombres de 8 bits peut donner une réponse de 9 bits. Le calculateur conserve la colonne supplémentaire.
  • Confondre décalages logique et arithmétique à droite. Ils donnent le même résultat pour les nombres positifs et diffèrent pour tout motif dont le bit de poids fort est 1. Les langages diffèrent : en Java, >> est arithmétique et >>> logique, tandis qu'en C, >> appliqué à une valeur signée négative dépend du compilateur (arithmétique sur les plus courants).
  • Lire par mégarde un motif de bits comme un nombre signé. 11110011 vaut 243 non signé et −13 en complément à deux. Les résultats bit à bit affichent les deux pour que vous puissiez distinguer celui que vous voulez.
  • Croire que NON ne dépend pas de la largeur. Dans un entier sans limite, NON de 12 vaut −13. Dans une largeur fixe, c'est le motif complémentaire, que renvoie ce calculateur.

Questions fréquentes

Comment additionner des nombres binaires ?
Travaillez de la colonne la plus à droite vers la gauche, en additionnant les deux bits et la retenue éventuelle. Un total de colonne égal à 0 ou 1 s'écrit tel quel ; un total de 2 s'écrit 0 avec une retenue de 1, et un total de 3 s'écrit 1 avec une retenue de 1. Par exemple, 1101 + 101 = 10010. Le calculateur affiche la retenue entrant dans chaque colonne.
Comment soustraire des nombres binaires ?
Soustrayez colonne par colonne à partir de la droite. Lorsqu'une colonne passerait sous zéro, empruntez 1 à la colonne suivante à gauche, ce qui ajoute 2 à la colonne courante. Si le second nombre est plus grand, soustrayez dans l'autre sens et mettez un signe moins au résultat. 1000 − 11 = 101 (8 − 3 = 5).
Quelle est la différence entre un décalage logique et un décalage arithmétique à droite ?
Un décalage logique à droite complète par des zéros les bits de poids fort libérés, et traite donc le motif comme un nombre non signé. Un décalage arithmétique recopie le bit de poids fort d'origine, de sorte qu'un nombre négatif en complément à deux reste négatif. Les deux divisent la valeur par deux, mais seul le décalage arithmétique conserve correctement le signe des valeurs négatives.
Que font ET, OU et OU exclusif ?
Ils comparent deux motifs de bits colonne par colonne. ET donne 1 seulement si les deux bits valent 1, OU donne 1 si au moins un vaut 1, et OU exclusif donne 1 si exactement un vaut 1. ET sert à masquer des bits, OU à en activer, et OU exclusif à les inverser ou à comparer des différences.
Ce calculateur gère-t-il les nombres binaires négatifs ?
En mode arithmétique, oui : mettez un signe moins devant, et les règles de signe s'appliquent au résultat exact. Le mode bit à bit prend en revanche des motifs de bits simples, car le motif d'un nombre négatif dépend de la largeur. Utilisez le Calculateur de complément à deux pour trouver le motif d'une valeur négative.
Quel est le plus grand nombre binaire que je peux saisir ?
Il n'y a pas de limite fixe, car l'arithmétique utilise des entiers de précision arbitraire. Le calcul en colonnes est tracé pour des opérandes allant jusqu'à 64 bits ; au-delà, vous obtenez tout de même le résultat exact, sans le tableau des étapes. Les opérations bit à bit sont limitées à la largeur choisie, jusqu'à 128 bits.

Outils associés

Autres outils : Données, balisage et code