🧰 UtlKit

Calculatrice Bit à Bit : Comment Faire un AND, un OR et un XOR de Deux Nombres en 32 bits, avec les Décalages, le NOT, le Bit de Signe et les Cinq Sorties Expliqués

Sept opérations bit à bit sur des mots de 32 bits : AND, OR, XOR, NOT A, NOT B et décalages vers la gauche et la droite, avec des nombres travaillés (12 AND 10 = 8), le décalage arithmétique qui conserve le signe, le masque 31 sur la quantité de décalage et cinq bases de sortie d'un coup, le tout en local dans le navigateur.

Une calculatrice bit à bit travaille sur le mot de 32 bits que la machine garde vraiment, pas sur le décimal que vous avez tapé. La Calculatrice Bit à Bit prend deux nombres, applique l'une des sept opérations (AND, OR, XOR, NOT A, NOT B, décalage vers la gauche, décalage vers la droite) et imprime le résultat en cinq bases d'un coup : décimal, hexadécimal, binaire sur 8 bits, binaire sur 32 bits et octal. Rien n'est envoyé ; les opérations tournent sur les entiers JavaScript du navigateur. Ce post déroule chaque opération avec des nombres travaillés, montre où le bit de signe s'infiltre dans les décalages, et les masques qui font de AND le cheval de bataille du code au niveau des octets.

Sept opérations sur un mot de 32 bits

Les trois opérations par paires agissent sur chaque position de bit. 12 est 0b1100 et 10 est 0b1010 : AND ne garde que les positions où les deux ont un 1, donc 12 AND 10 = 0b1000 = 8 ; OR garde la position où au moins un a un 1, donc 12 OR 10 = 0b1110 = 14 ; XOR garde la position où exactement un a un 1, donc 12 XOR 10 = 0b0110 = 6. Les deux boutons NOT inversent chaque bit d'un opérande : 5 est 0b0101 et sa forme inversée 0b1010 est la lecture en complément à deux de -6, qui s'imprime en hexadécimal sur 32 bits comme 0xFFFFFFFA. Les deux décalages déplacent les bits : 1 décalé de 4 vers la gauche fait 16, et 1024 décalé de 2 vers la droite fait 256. Quand vous voulez la même valeur dans une autre base sans toucher aux bits, le convertisseur de base numérique fait la conversion pure.

Trois bases d'entrée, une valeur de 32 bits

Chaque champ accepte le décimal nu, l'hexadécimal avec préfixe 0x et le binaire avec préfixe 0b, et l'analyseur garde un seul entier de 32 bits derrière les trois. 0xFF AND 0x0F = 15 est le masque du quartet bas que vous voyez dans chaque protocole d'octets. En tapant, l'outil renvoie chaque opérande comme une chaîne binaire de 32 bits groupée par nibbles, et le panneau de résultat dessine les 8 bits bas en huit cases allumées ou éteintes : 255 en allume les huit, 16 en allume une seule. Lire ces groupes à l'œil est la même habileté que convertir du texte en code binaire, et le convertisseur de texte et binaire l'exerce lettre par lettre.

Décalages, bit de signe et masque 31

Le décalage vers la droite est arithmétique : il copie le bit de signe en se déplaçant, donc -8 est 0xFFFFFFF8 et -8 décalé de 1 vers la droite donne 0xFFFFFFFC = -4, pas 0x7FFFFFFC. Celui vers la gauche remplit des zéros par la droite, mais le bit 31 est le bit de signe du mot de 32 bits, donc 1 décalé de 30 vers la gauche fait 1073741824 (0x40000000), encore positif, tandis que 1 décalé de 31 vers la gauche fait -2147483648, le négatif le plus petit. La quantité de décalage est masquée d'abord à 0-31 : 1 décalé de 33 vers la gauche se comporte exactement comme 1 décalé de 1 et renvoie 2. Pas d'erreur, pas d'alerte de débordement. Tirer un octet d'un mot est le motif du quotidien : 0xFF00 décalé de 8 vers la droite donne 255. Pour les allers-retours au niveau des octets entre hexadécimal et UTF-8, le convertisseur Hex UTF-8 Base64 est le frère de cette vue.

Cinq bases de sortie d'un coup

Le panneau de résultat montre la même valeur cinq fois : décimal, hexadécimal (majuscules, préfixe 0x), binaire sur 8 bits, binaire sur 32 bits et octal. 255 s'imprime comme 255, 0xFF, 0b1111 1111, la chaîne de 32 bits avec ses 24 bits hauts à zéro, et 0o377. La colonne octale n'est pas une garniture : le trio de droits de fichier est octal parce que chaque chiffre est exactement un groupe de 3 bits de droit, donc 0o755 est le mot de 9 bits 0b111101101, qui est rwxr-xr-x et 493 en décimal. La calculatrice de droits Chmod déploie ce trio dans les lignes propriétaire, groupe et autres, c'est la vue au niveau des bits de cette colonne.

Masques : le travail quotidien de AND

AND avec un petit nombre ne garde que les bits bas : 0xFF AND 0x0F = 15, et -1 AND 7 = 7 parce que -1 est tous des uns. Tester un seul flag, c'est valeur AND (1 << n) : si la réponse n'est pas 0, le bit n est posé. XOR est son propre inverse, donc c'est un chiffreur d'une ligne : 65 XOR 42 = 107 et 107 XOR 42 = 65 ; un octet XOR deux fois avec la même clé revient sans changer. 15 dans les trois bases compactes, c'est 0b1111, 0o17 et 0xF. Les encodages qui packent des octets en texte, comme Base64, sont assis sur le même groupe de 6 bits de cette section, et l'encodeur et décodeur Base64 montre la table de correspondance.

Les mêmes 0 et 1 partout

Le calcul bit à bit est la petite couche sous tout ce qui compte en octets. Le guide du texte vers le binaire coupe les caractères en groupes de 8 bits à la main ; le générateur de hachage mélange ensuite le tampon entier avec justement ces opérations, AND, OR, XOR et rotations, jusqu'à ce qu'un résumé de 32 bits sorte. Quand la question est en quelle base lire une valeur, partez des bits : chaque base de ce site, des cases de 8 bits d'ici aux chiffres octaux des droits, est le même mot de 32 bits avec une autre notation. La calculatrice est là que ce mot cesse d'être abstrait : deux entrées, une opération, cinq façons de lire la réponse.

Outils Associés

Questions Fréquentes

Quelles opérations la Calculatrice Bit à Bit supporte-t-elle ?

Sept : AND, OR et XOR agissent sur les deux nombres, NOT A et NOT B inversent un opérande, et le décalage vers la gauche et vers la droite déplacent les bits d'un nombre de la quantité donnée par l'autre. Tous tournent sur des entiers de 32 bits, et le résultat s'imprime d'un coup en décimal, hexadécimal, binaire sur 8 bits, binaire sur 32 bits et octal.

Comment la calculatrice lit-elle ma saisie ?

Chaque champ accepte le décimal nu, l'hexadécimal avec préfixe 0x et le binaire avec préfixe 0b, le tout analysé dans le même entier de 32 bits. En tapant, l'outil renvoie l'opérande comme une chaîne binaire de 32 bits groupée par nibbles, pour que vous vérifiiez les bits avant de choisir l'opération.

Que se passe-t-il si je décale de plus de 31 ?

La quantité de décalage est masquée d'abord à 0-31 avant d'être appliquée, donc 1 décalé de 33 vers la gauche se comporte exactement comme 1 décalé de 1 et renvoie 2. Pas d'erreur, pas d'alerte de débordement ; les bits extra de la quantité sont tout simplement jetés.

Pourquoi -8 décalé de 1 vers la droite vaut-il -4 ?

Parce que le décalage vers la droite est arithmétique : il copie le bit de signe quand le mot se déplace. -8 est 0xFFFFFFF8 ; un pas arithmétique donne 0xFFFFFFFC, soit -4. Un décalage logique donnerait 0x7FFFFFFC, un grand nombre positif, mais cette calculatrice garde le signe.

La calculatrice envoie-t-elle mes nombres ?

Non. Les entrées restent dans le navigateur, les sept opérations tournent sur des entiers JavaScript, et les cinq bases du résultat sont toutes calculées en local. Fermer l'onglet efface tout ; rien n'est stocké ni envoyé.

Articles Associés