ForHosting KIT · Mathématiques

Calculateur OU bit à bit

5 OR 3 donne 7 : en binaire, 101 et 11 s'alignent par la droite et chaque colonne qui contient un 1 le garde, ce qui donne 111. Saisissez deux entiers et obtenez leur OR bit à bit, exact et sans coupure à 32 bits. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
A
5
B
3
Vous obtenez
Résultat
7
Expression
5 | 3 = 7
Binaire a
101
Binaire b
11

Le OU bit à bit est l'opération sur entiers qui positionne un bit du résultat dès que ce bit est déjà positionné dans le premier opérande, dans le second ou dans les deux. Les développeurs l'écrivent avec une barre verticale en C, Java, JavaScript, Python, Go et dans la plupart des dialectes d'assembleur lorsqu'ils fusionnent des drapeaux de permission, empaquettent des bits de fonctionnalité ou combinent des masques de registres matériels. Les étudiants rencontrent le même opérateur lorsqu'ils convertissent deux décimaux en binaire, alignent les bits depuis l'extrémité de poids faible et écrivent un un dans chaque colonne qui contient déjà un un. Ce calculateur accepte deux entiers, évalue leur OU bit à bit inclusif en arithmétique entière exacte plutôt qu'avec la troncature à trente-deux bits d'un langage, et renvoie l'entier résultant avec les vues binaires des deux entrées et de la réponse afin que vous puissiez vérifier à l'œil la règle colonne par colonne.

Ce que le OU bit à bit fait à chaque bit

Le OU bit à bit, écrit avec une barre verticale en C, Java, JavaScript, Python et dans la plupart des langages d'assembleur, construit un entier résultat dont le bit en position k vaut un dès que le bit à cette position vaut un dans le premier opérande, dans le second ou dans les deux. La règle est la disjonction inclusive de deux bits : zéro ou zéro donne zéro ; toute autre combinaison donne un.

Cela se distingue du ou exclusif, qui éteint un bit lorsque les deux côtés l'ont déjà, et du ou logique, qui réduit chaque opérande à un seul vrai ou faux au lieu de parcourir le vecteur de bits. Une paire décimale travaillée rend la règle par colonnes concrète. Cinq en binaire est un-zéro-un et trois est un-un ; en alignant ces bits depuis l'extrémité de poids faible on obtient un-un-un, qui est sept.

Douze est un-un-zéro-zéro et dix est un-zéro-un-zéro ; le ou inclusif colonne par colonne est un-un-un-zéro, qui est quatorze. La même identité est la façon dont les mots de drapeaux accumulent les permissions : si lecture est le bit zéro et écriture le bit un, alors lecture ou écriture est l'entier trois. Les cartes de registres matériels, les bits de mode de fichier et les drapeaux de protocoles réseau utilisent tous ce motif de fusion des uns.

Ce point d'accès applique cette définition à deux entiers et renvoie l'entier fusionné ; il n'interprète pas de drapeaux nommés à votre place et ne tronque pas les opérandes à trente-deux bits comme le fait souvent un opérateur natif lorsque les bits de poids fort dépassent un mot machine.

Où un calculateur de OU bit à bit justifie sa place

Les développeurs utilisent un calculateur de OU bit à bit lorsqu'ils assemblent des masques de permission, fusionnent des bits de fonctionnalité ou vérifient qu'une constante d'en-tête est bien la combinaison inclusive qu'ils croient. Le travail embarqué et protocolaire documente souvent les registres sous forme de dumps hexadécimaux ; convertir deux entiers, les unir par un ou et relire les champs binaires est plus rapide que d'ouvrir un débogueur pour un cas isolé.

Les cours d'informatique présentent le OU bit à bit la même semaine que and, xor et les décalages ; un oracle déterministe permet à une plateforme d'apprentissage de noter à la fois la réponse décimale et la chaîne de bits sans exécuter du code étudiant non fiable. Une entrée invalide ne consomme pas de solde.

Limitez les requêtes à deux entiers sûrs, figez les exemples de référence dans les tests, et vous obtenez le même a barre-verticale b sur un portable et dans un worker d'automatisation sans dresser un système d'algèbre formelle pour un travail d'une instruction. De grands opérandes tels que deux puissance quarante ou un restent exacts ici ; un opérateur de langage à trente-deux bits laisserait tomber ces bits de poids fort et renverrait un un erroné, précisément la classe de bogue silencieux que ce contrat est écrit pour empêcher.

Masques de permission et de fonctionnalités

Fusionnez deux mots entiers de drapeaux (lecture ou écriture, fonction A ou fonction B) et relisez le résultat décimal plus les bits binaires pour confirmer l'union.

Devoirs de cours sur les bits

Laissez les élèves envoyer deux entiers et vérifier à la fois le a | b décimal et la règle binaire par colonnes auprès d'un oracle déterministe qui refuse les non-entiers.

Constantes de registre et de protocole

Vérifiez qu'un masque documenté de matériel ou de protocole est le OU inclusif de deux champs listés, sans ouvrir un débogueur ni vous fier à une troncature 32 bits.

Que se passe-t-il si une entrée n'est pas un entier ?

Les flottants, le texte, les booléens, les valeurs manquantes et les nombres non finis sont rejetés et ne sont pas facturés.

Est-ce le même opérateur | que celui de JavaScript ?

La règle de bits est la même, mais ce calculateur utilise un OU entier de largeur illimitée. Le | d'un langage tronque souvent à trente-deux bits, donc 2^40 | 1 deviendrait 1 là-bas et reste exact ici.

Le OU bit à bit accepte-t-il les entiers négatifs ?

Oui. Les valeurs signées utilisent un OU inclusif en complément à deux. Le résultat est un entier sûr ; les champs binaires montrent un moins initial pour les négatifs.

Quelle différence entre le OR bit à bit, le XOR et le OU logique ?

Le OR bit à bit garde un 1 partout où l'un des deux nombres en a un, y compris quand les deux en ont. Le XOR éteint ce bit commun, et le OU logique traite chaque entier comme une seule valeur vraie ou fausse au lieu de comparer bit par bit.

Comment combiner des droits d'accès avec OR ?

Donnez à chaque droit son propre bit et réunissez-les avec OR. Si la lecture est le bit 0, qui vaut 1, et l'écriture le bit 1, qui vaut 2, lecture OR écriture vaut 3, un seul nombre qui porte les deux droits.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/math/or

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/math/or \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"a":5,"b":3}'
{
  "a": 5,
  "b": 3
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "math.or",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_abs9007199254740991
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Tout opérande qui n'est pas un entier fini est rejeté avec invalid_input au lieu d'être tronqué en silence.

Contrat d'entrée, forme de sortie et validation

L'implémentation ne tronque jamais un flottant en silence : envoyer cinq virgule cinq est une erreur, pas un cinq forcé, ce qui évite le bogue classique où un opérateur bit à bit du langage tronque vers zéro et renvoie quand même un nombre. Une validation en échec n'est pas facturée. Envoyez par POST un objet JSON avec deux entiers obligatoires, a et b. Chaque champ peut arriver comme nombre JSON ou comme chaîne de chiffres décimaux, avec un signe initial facultatif. Les alias x ou left sont acceptés pour a, et y ou right pour b ; les noms canoniques apparaissent toujours dans la réponse. Les champs manquants, les chaînes vides, les booléens, les objets, le texte non numérique, les infinis et toute valeur qui n'est pas un entier fini échouent avec invalid_input et nomment le champ en cause, afin qu'un moteur de formulaire puisse mettre le contrôle en évidence. Les valeurs hors de la plage des entiers sûrs sont aussi rejetées car le type nombre de JSON ne peut pas les représenter exactement. En cas de succès, le corps répète a et b, renvoie result comme l'entier OU bit à bit de la paire, inclut une chaîne d'expression telle que cinq barre-verticale trois égale sept, et inclut binary_a, binary_b et binary_result pour que vous puissiez auditer la règle par colonnes sans une seconde conversion. L'arithmétique utilise un ou en complément à deux de largeur illimitée via BigInt, puis reconvertit en un nombre JSON qui reste dans la plage sûre parce que les deux entrées y étaient déjà. Associez le JSON à votre propre interface si vous voulez des étiquettes de drapeaux nommés ; cette capacité ne calcule que l'opération entière.

Où un calculateur de OU bit à bit justifie sa place

Les pipelines de données qui empaquettent des drapeaux catégoriels dans un seul entier peuvent appeler l'API depuis tout langage qui parle JSON plutôt que de réimplémenter les règles de largeur en complément à deux dans chaque runtime.

Comment calcule-t-on le OU bit à bit de deux entiers ?

Envoyez les entiers a et b (ou les alias x/left et y/right). L'API renvoie result = a | b, une chaîne d'expression et les vues binaires des deux opérandes et de la réponse.

Combien coûte le calculateur de OU bit à bit ?

L'outil du navigateur est gratuit. Les requêtes API utilisent un solde KIT prépayé à $0.002 par appel réussi ; une entrée invalide n'est pas facturée.

Consulter la documentation complète du KIT →