Calculadora de operaciones de bits
Realiza operaciones bitwise AND, OR, XOR, NOT y de desplazamiento en números enteros. Visualiza resultados en formatos binario, hexadecimal y decimal lado a lado.
0x0000003C · 0b111100
0x0000000D · 0b1101
60 & 13 = 12
A0000 0000 0000 0000 0000 0000 0011 1100
B0000 0000 0000 0000 0000 0000 0000 1101
=0000 0000 0000 0000 0000 0000 0000 1100
Decimal
12
Hexadecimal
0x0000000C
Binary (short)
0b1100
Bitwise Operation Truth Table
| A | B | A & B | A | B | A ^ B | ~A |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 | 0 |
| 1 | 1 | 1 | 1 | 0 | 0 |
Cómo usar Calculadora de operaciones de bits
- 1Ingresa dos números enteros (A y B) en decimal, binario (prefijo 0b) o hexadecimal (prefijo 0x).
- 2Selecciona una operación bitwise: AND, OR, XOR, NOT, desplazamiento izquierdo o desplazamiento derecho.
- 3Visualiza el resultado en representaciones binarias, hexadecimales y decimales.
ZenovayAnalytics
Analytics pensado para fundadores.
- Seguimiento de visitantes en tiempo real
- Privacidad primero, sin aviso de cookies
- Configurado en dos minutos
Herramientas relacionadas
Formateador y Validador JSON
Formatea, valida y embellece datos JSON con resaltado de sintaxis y detección de errores.Decodificador JWT
Decodifica e inspecciona tokens JWT. Consulta el encabezado, la carga útil y verifica firmas.Base64 Codificar/Decodificar
Codifica texto a Base64 o decodifica Base64 a texto. Soporta UTF-8 y datos binarios.Codificador/Decodificador de URL
Codifica o decodifica componentes de URL. Maneja caracteres especiales, cadenas de consulta y URLs completas.Preguntas frecuentes
¿Qué son los operadores bit a bit?▾
Los operadores bit a bit trabajan con enteros a nivel binario (de bit). AND (&): el bit de salida es 1 solo si ambos bits de entrada son 1. OR (|): el bit de salida es 1 si alguno de los bits de entrada es 1. XOR (^): el bit de salida es 1 si exactamente un bit de entrada es 1 (o exclusivo). NOT (~): invierte cada bit (complemento a 1); en JavaScript, NOT usa enteros de 32 bits con signo, por lo que ~5 = -6. Desplazamiento a la izquierda (<<): desplaza todos los bits N posiciones a la izquierda, equivalente a multiplicar por 2^N. Desplazamiento a la derecha (>>): desplaza a la derecha con extensión de signo; desplazamiento a la derecha sin signo (>>>): desplaza a la derecha y rellena con 0s.
¿Qué es una máscara de bits y cómo se usa?▾
Una máscara de bits es un entero usado con operadores bit a bit para establecer, limpiar o probar bits específicos. Establecer un bit: valor | (1 << n) pone el bit n en 1. Limpiar un bit: valor & ~(1 << n) pone el bit n en 0. Alternar un bit: valor ^ (1 << n) cambia el bit n. Probar un bit: (valor >> n) & 1 devuelve 1 si el bit n está activo. Usos prácticos: permisos de archivos Unix (chmod 755 = 111 101 101 en binario), máscaras de subred IP, indicadores de funciones comprimidos en un solo entero, canales de color RGB, mapas de estado de juego, encabezados de protocolos de red.
¿Cómo funciona XOR y para qué se usa?▾
XOR (o exclusivo) produce 1 cuando los bits difieren. Propiedades clave: A ^ A = 0, A ^ 0 = A, es conmutativo y asociativo. Usos prácticos: cifrado simple (XOR con una clave para cifrar, XOR nuevamente para descifrar — misma operación). Encontrar el elemento único: XOR de todos los números para encontrar el único en un array donde todo lo demás aparece dos veces. Intercambio sin variable temporal: a ^= b; b ^= a; a ^= b. Sumas de verificación CRC (comprobación de redundancia cíclica) para detección de errores. Cálculo de bit de paridad.
¿Por qué JavaScript usa enteros de 32 bits para operaciones bit a bit?▾
Los números de JavaScript son flotantes IEEE 754 de 64 bits, pero los operadores bit a bit convierten los operandos a enteros de 32 bits con signo antes de operar. Esto significa: el valor máximo seguro para operaciones bit a bit es 2^31 − 1 = 2.147.483.647. Los números superiores a este desbordamiento producen resultados inesperados. NOT (~) siempre devuelve un resultado de 32 bits con signo — ~0 = -1, ~1 = -2. El desplazamiento a la derecha sin signo (>>>) devuelve un entero de 32 bits sin signo. Para operaciones bit a bit de 64 bits, use BigInt: 100n & 255n.
¿Cuáles son los trucos comunes de manipulación de bits?▾
Verificar si un número es par: n & 1 === 0. Verificar si es potencia de 2: n > 0 && (n & (n-1)) === 0. Obtener el bit más bajo activo: n & -n. Limpiar el bit más bajo activo: n & (n-1). Contar bits activos (popcount): while(n) { count += n & 1; n >>= 1; }. Intercambiar nibbles en un byte: ((b & 0xF0) >> 4) | ((b & 0x0F) << 4). División entera rápida por potencia de 2: n >> k equivale a Math.floor(n / 2^k). Multiplicar por potencia de 2: n << k equivale a n * 2^k.