Calcolatore OR bit a bit
5 OR 3 dà 7: in binario 101 e 11 si allineano da destra e ogni colonna che contiene un 1 lo conserva, ottenendo 111. Inserisca due numeri interi e ottenga il loro OR bit a bit, esatto e senza tagli a 32 bit. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- A
- 5
- B
- 3
- Risultato
- 7
- Espressione
- 5 | 3 = 7
- Binario a
- 101
- Binario b
- 11
L'OR bit a bit è l'operazione tra interi che accende un bit del risultato ovunque quel bit sia già acceso nel primo operando, nel secondo o in entrambi. Chi sviluppa lo scrive con una barra verticale in C, Java, JavaScript, Python, Go e nella maggior parte dei dialetti assembly quando unisce flag di permesso, impacchetta bit di funzione o combina maschere di registri hardware. Chi studia incontra lo stesso operatore convertendo due decimali in binario, allineando i bit dall'estremo meno significativo e scrivendo un uno in ogni colonna che contiene già un uno. Questo calcolatore accetta due interi, valuta il loro OR bit a bit inclusivo con aritmetica intera esatta anziché con il troncamento a trentadue bit di un linguaggio, e restituisce l'intero risultante insieme alle viste binarie di entrambi gli ingressi e della risposta, così Lei può controllare a occhio la regola per colonne.
Che cosa fa l'OR bit a bit su ciascun bit
L'OR bit a bit, scritto con una barra verticale in C, Java, JavaScript, Python e nella maggior parte dei linguaggi assembly, costruisce un intero risultato il cui bit in posizione k vale uno ogni volta che il bit in quella posizione è uno nel primo operando, nel secondo o in entrambi. La regola è la disgiunzione inclusiva di due bit: zero o zero dà zero; ogni altra combinazione dà uno.
Ciò è diverso dall'o esclusivo, che spegne un bit quando entrambi i lati lo hanno già, e dall'o logico, che riduce ciascun operando a un solo vero o falso invece di percorrere il vettore di bit. Una coppia decimale lavorata rende concreta la regola per colonne. Cinque in binario è uno-zero-uno e tre è uno-uno; allineando quei bit dall'estremo meno significativo si ottiene uno-uno-uno, che è sette.
Dodici è uno-uno-zero-zero e dieci è uno-zero-uno-zero; l'o inclusivo colonna per colonna è uno-uno-uno-zero, che è quattordici. La stessa identità è il modo in cui le parole di flag accumulano permessi: se lettura è il bit zero e scrittura è il bit uno, allora lettura o scrittura è l'intero tre.
Dove un calcolatore di OR bit a bit merita il posto
Chi sviluppa usa un calcolatore di OR bit a bit quando assembla maschere di permesso, unisce bit di funzione o controlla che una costante in un'intestazione sia davvero la combinazione inclusiva che crede. Il lavoro embedded e di protocollo documenta spesso i registri come dump esadecimali; convertire due interi, unirli con o e rileggere i campi binari è più rapido che aprire un debugger per un caso isolato.
I corsi di informatica presentano l'OR bit a bit nella stessa settimana di and, xor e gli scorrimenti; un oracolo deterministico consente a una piattaforma di apprendimento di valutare sia la risposta decimale sia la stringa di bit senza eseguire codice studente non attendibile. Un ingresso non valido non consuma saldo.
Tenga le richieste a due interi sicuri, fissi gli esempi di riferimento nei test e otterrà lo stesso a barra-verticale b su un portatile e in un worker di automazione senza erigere un sistema di algebra computazionale per un lavoro di una istruzione. Operandi grandi come due elevato alla quarantesima o uno restano esatti qui; un operatore di linguaggio a trentadue bit lascerebbe cadere quei bit alti e restituirebbe un uno errato, precisamente la classe di difetto silenzioso che questo contratto è scritto per impedire.
Casi d'uso
Maschere di permesso e di funzioni
Unisca due parole intere di flag (lettura o scrittura, funzione A o funzione B) e rilegga il risultato decimale più i bit binari per confermare l'unione.
Compiti scolastici sulle operazioni di bit
Lasci che la classe invii due interi e controlli sia l'a | b decimale sia la regola binaria per colonne rispetto a un oracolo deterministico che rifiuta i non interi.
Costanti di registro e di protocollo
Verifichi che una maschera documentata di hardware o di protocollo sia l'OR inclusivo di due campi elencati, senza aprire un debugger né fidarsi di un troncamento a 32 bit.
Domande frequenti
Che succede se un ingresso non è un intero?
Float, testo, booleani, valori assenti e numeri non finiti vengono rifiutati e non addebitati.
È lo stesso operatore | di JavaScript?
La regola dei bit è la stessa, ma questo calcolatore usa un OR intero di larghezza illimitata. Il | del linguaggio spesso tronca a trentadue bit, quindi 2^40 | 1 diventerebbe 1 là e resta esatto qui.
L'OR bit a bit funziona con interi negativi?
Sì. I valori con segno usano OR inclusivo in complemento a due. Il risultato è un intero sicuro; i campi binari mostrano un meno iniziale per i negativi.
Che differenza c'è tra OR bit a bit, XOR e OR logico?
L'OR bit a bit lascia un 1 dove uno qualsiasi dei due numeri lo ha, anche quando lo hanno entrambi. Lo XOR spegne quel bit in comune, e l'OR logico tratta ogni intero come un unico valore vero o falso invece di confrontare bit per bit.
Come si combinano i permessi con OR?
Assegni a ogni permesso un bit proprio e li unisca con OR. Se la lettura è il bit 0, che vale 1, e la scrittura il bit 1, che vale 2, lettura OR scrittura dà 3, un solo numero che contiene entrambi i permessi.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
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}'const res = await fetch("https://api.kit.forhosting.com/math/or", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 5,
"b": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/or",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 5,
"b": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/or", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":5,"b":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":5,"b":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/or", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"a": 5,
"b": 3
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.or",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_abs | 9007199254740991 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Qualsiasi operando che non sia un intero finito viene rifiutato con invalid_input invece di essere troncato in silenzio.
Che cosa fa l'OR bit a bit su ciascun bit
Le mappe dei registri hardware, i bit di modo file e i flag dei protocolli di rete usano tutti questo schema di fusione degli uni. Questo endpoint applica quella definizione a due interi e restituisce l'intero fuso; non interpreta flag con nome al posto Suo e non tronca gli operandi a trentadue bit come spesso fa un operatore nativo quando i bit alti stanno sopra una parola macchina.
Contratto di ingresso, forma dell'uscita e convalida
L'implementazione non tronca mai in silenzio un float: inviare cinque punto cinque è un errore, non un cinque forzato, il che evita il classico difetto in cui un operatore bit a bit del linguaggio tronca verso zero e restituisce comunque un numero. La convalida fallita non viene addebitata. Invii con POST un oggetto JSON con due interi obbligatori, a e b. Ciascun campo può arrivare come numero JSON o come stringa di cifre decimali, con un segno iniziale facoltativo. Si accettano gli alias x o left per a, e y o right per b; i nomi canonici compaiono comunque nella risposta. Campi assenti, stringhe vuote, booleani, oggetti, testo non numerico, infiniti e qualsiasi valore che non sia un intero finito falliscono con invalid_input e nominano il campo colpevole, così un renderer di modulo può evidenziare il controllo. I valori fuori dall'intervallo degli interi sicuri sono rifiutati perché il tipo numero di JSON non può rappresentarli con esattezza. In caso di successo il corpo ripete a e b, restituisce result come l'intero OR bit a bit della coppia, include una stringa di espressione come cinque barra-verticale tre uguale sette, e include binary_a, binary_b e binary_result perché Lei possa verificare la regola per colonne senza un secondo passo di conversione. L'aritmetica usa un o in complemento a due di larghezza illimitata tramite BigInt, poi riconverte in un numero JSON che resta nell'intervallo sicuro perché entrambi gli ingressi già lo erano. Abbini il JSON alla propria interfaccia se desidera etichette di flag con nome; questa capacità calcola solo l'operazione intera.
Dove un calcolatore di OR bit a bit merita il posto
Le pipeline di dati che impacchettano flag categorici in un solo intero possono chiamare l'API da qualsiasi linguaggio che parli JSON invece di reimplementare le regole di larghezza in complemento a due in ogni runtime.
Domande tecniche
Come si calcola l'OR bit a bit di due interi?
Invii gli interi a e b (o gli alias x/left e y/right). L'API restituisce result = a | b, una stringa di espressione e le viste binarie di entrambi gli operandi e della risposta.
Quanto costa il calcolatore di OR bit a bit?
Lo strumento nel browser è gratuito. Le richieste API usano saldo KIT prepagato a $0.002 per chiamata riuscita; un ingresso non valido non viene addebitato.