WMW

Calcolatore Bitwise

Free

Esegui operazioni AND, OR, XOR, NAND, NOR, XNOR, NOT, e shift di bit su numeri binari, ottali, decimali, o esadecimali.

Operazione bitwise

Attività recente

Visibile a tutti. Ultimi 20 utilizzi su tutti i visitatori, i più recenti per primi.

AND → 88

2 giorni fa

AND → 88

2 giorni fa

AND → 88

2 giorni fa

AND → 88

2 giorni fa

AND → 88

3 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

4 giorni fa

AND → 88

5 giorni fa

AND → 88

5 giorni fa

Commenti (0)

Hai trovato utile questo strumento? Lascia un commento, condividi un consiglio, o dicci come possiamo migliorarlo.

I commenti degli ospiti vengono revisionati prima della pubblicazione. Accedi per pubblicare istantaneamente.

Ancora nessun commento. Sii il primo a condividere il tuo pensiero!

Cosa fa questo strumento

Esegue operazioni logiche a livello di bit, AND, OR, XOR, NAND, NOR, XNOR, NOT, e shift sinistro/destro, su numeri che inserisci in binario, ottale, decimale, o esadecimale. Scegli una larghezza di bit fissa o lascia che venga rilevata automaticamente, e vedi il risultato in ogni formato insieme a un'analisi visiva bit per bit.

Come funziona

Ogni valore inserito viene convertito in un pattern di bit grezzo a larghezza fissa: gli input binari, ottali ed esadecimali vengono letti come pattern di bit letterali, mentre l'input decimale viene codificato usando il complemento a due se negativo (valore + 2^larghezza) o usato direttamente se non negativo. L'operazione scelta viene poi applicata bit per bit su quella larghezza, ad esempio AND imposta ogni bit di output a 1 solo dove entrambi i bit di input sono 1, XOR lo imposta a 1 solo dove i bit di input differiscono, e NOT inverte ogni bit. Gli shift spostano il pattern di bit a sinistra o destra di N posizioni, con lo shift sinistro e lo shift destro logico che riempiono i bit liberati con 0, e lo shift destro aritmetico che li riempie con una copia del bit di segno. Il risultato viene poi riletto in binario, ottale, esadecimale, e sia decimale senza segno (valore grezzo) sia decimale con segno (interpretazione in complemento a due).

Problemi che risolve

Domande frequenti

›Qual è la differenza tra AND, OR, e XOR?

AND restituisce 1 solo quando entrambi i bit sono 1 (utile per il mascheramento, ad esempio per verificare se un flag specifico è impostato). OR restituisce 1 quando almeno un bit è 1 (utile per combinare flag). XOR restituisce 1 quando i bit sono diversi, il che lo rende utile per invertire bit o rilevare cambiamenti tra due valori.

›Cosa fa effettivamente l'impostazione larghezza di bit?

Fissa con quanti bit i tuoi numeri sono rappresentati (8, 16, 32, o 64), il che influisce su due cose: come vengono codificati i numeri negativi (il complemento a due si avvolge alla larghezza scelta) e dove i bit vengono scartati quando si esegue lo shift a sinistra. "Automatico" sceglie la larghezza standard più piccola che può contenere entrambi i tuoi valori inseriti senza un errore di overflow.

›Perché vedo due risultati decimali diversi (con segno e senza segno)?

Un pattern di bit grezzo è ambiguo di per sé, può rappresentare un piccolo numero positivo senza segno o un numero negativo in complemento a due a seconda di come intendi usarlo. Ad esempio, a larghezza 8-bit il pattern 11111111 è 255 senza segno ma -1 con segno. Entrambe le interpretazioni vengono mostrate così puoi leggere quella che corrisponde al tuo contesto.

›Qual è la differenza tra shift destro logico e aritmetico?

Lo shift destro logico (>>>) riempie sempre i bit più a sinistra liberati con 0, indipendentemente dal segno. Lo shift destro aritmetico (>>) li riempie invece con una copia del bit di segno originale, così spostare a destra un numero negativo (complemento a due) lo mantiene negativo, dividendolo effettivamente per una potenza di due arrotondando verso l'infinito negativo.

›Posso mescolare formati numerici, come fare l'AND tra un valore esadecimale e uno decimale?

Sì. Valore A e Valore B hanno ciascuno il proprio selettore Dec/Bin/Ott/Esa indipendente, così puoi inserire uno in esadecimale e l'altro in decimale (o qualsiasi combinazione) e lo strumento converte entrambi alla stessa larghezza di bit prima di combinarli.

Strumenti correlati