Calculadora bit a bit
Combina dos números con AND, OR y XOR, invierte uno con NOT o desplaza y rota sus
bits. Escribe en hexadecimal (0x), binario (0b) o decimal,
elige 8, 16, 32 o 64 bits y mira cada bit de A, B y el resultado alineados columna a
columna. Es lo que en inglés se conoce como calculadora bitwise.
El resultado aparece aquí mientras escribes.
Cómo funciona cada operación
AND, OR y XOR comparan los dos operandos columna a columna, de modo que cada bit del resultado depende solo de los dos bits que tiene justo encima:
| A | B | A AND B | A OR B | A XOR B |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
NOT invierte todos los bits dentro del ancho elegido; por eso
NOT 0x0F es 0xF0 a 8 bits pero 0xFFFFFFF0 a 32.
<< desliza todos los bits hacia la izquierda y rellena el hueco
con ceros; >> los desliza hacia la derecha, también rellenando
con ceros (desplazamiento lógico: esta herramienta trata los valores como patrones sin
signo, así que no aplica el desplazamiento aritmético que copia el bit de signo).
ROL y ROR rotan en lugar de desplazar: los bits que
salen por un extremo vuelven a entrar por el otro.
Máscaras: activar, borrar y comprobar bits
Casi todo el trabajo bit a bit del día a día es manejar flags en un byte o en un registro. Con tres idiomas basta; aquí van a 8 bits:
Activar el bit 3 — OR con una máscara que solo tenga ese bit a 1:
0x41 OR 0x08 → 0100 0001 | 0000 1000 = 0100 1001 = 0x49
Borrar el bit 0 — AND con la máscara invertida (NOT 0x01 = 0xFE):
0x49 AND 0xFE → 0100 1001 & 1111 1110 = 0100 1000 = 0x48
Comprobar el bit 6 — AND con la máscara y mirar si el resultado es distinto de cero:
0x48 AND 0x40 → 0100 1000 & 0100 0000 = 0100 0000 = 0x40 ≠ 0 → el bit está a 1
XOR con la misma máscara alterna el bit en vez de fijarlo, y un valor XOR consigo mismo siempre da cero: una forma clásica de poner un registro a cero en una sola instrucción.
Desplazamientos como multiplicación y división
Como el binario es posicional, mover todos los bits una posición a la izquierda dobla
el valor y moverlos a la derecha lo divide entre dos: x << n equivale a
x × 2ⁿ y x >> n a x ÷ 2ⁿ, redondeando
hacia abajo.
0x05 << 2 → 0000 0101 → 0001 0100 = 0x14 (5 × 4 = 20)
0x14 >> 2 → 0001 0100 → 0000 0101 = 0x05 (20 ÷ 4 = 5)
Con un ancho fijo la multiplicación se desborda sin avisar: cualquier bit que salga
por arriba se pierde. A 8 bits, 0xC0 << 1 da 0x80 y no
0x180, porque 192 × 2 = 384 no cabe en un byte. Cambia el ancho de bits
en la calculadora para ver qué bits sobreviven.
Herramientas y guías relacionadas
- Operaciones bit a bit explicadas — máscaras, flags y la diferencia entre desplazamiento aritmético y lógico.
- Calculadora hexadecimal — aritmética y operaciones bit a bit en modo de 64 bits con y sin signo.
- Calculadora de complemento a dos — cómo el mismo patrón de bits se lee con o sin signo.
- Conversor hexadecimal ↔ binario — mira cualquier valor hex en nibbles antes de enmascararlo.