Calculadora de Operaciones a Nivel de Bits

Doce operaciones a nivel de bits — AND, OR, XOR, NOT, NAND, NOR, XNOR, desplazamientos lógicos y aritméticos, y rotaciones de bits — sobre anchos de 8, 16, 32 o 64 bits. Todo el cálculo usa BigInt, así que los valores de 64 bits se mantienen exactos y el rango sin signo de 64 bits (018.446.744.073.709.551.615) no pierde precisión. Cuadrícula de bits en vivo con color por bit, popcount, conteos de ceros a la izquierda y a la derecha, y vista en complemento a dos con signo. Botones de copiar para cada formato de salida. Todos los cálculos se ejecutan en tu navegador — no se sube nada.

Resultado

Decimal
Hex
Binario
Octal
Con signo (complemento a dos)

Cuadrícula de bits bit más significativo a la izquierda

1 (activado) 0 (desactivado) Pasa el ratón sobre cualquier bit para ver su índice, byte y peso decimal.

Estadísticas

Popcount
Ceros a la izquierda
Ceros a la derecha
¿Bit alto activado?
¿A o B enmascarados?
Cómo se relacionan las operaciones con el ancho de bits
  • AND (&), OR (|), XOR (^): operaciones a nivel de bits estándar. Ambos operandos se enmascaran primero al rango [0, 2^width), así que un valor que no cabe ve sus bits altos descartados. La página muestra una advertencia.
  • NOT (~): invierte cada bit en el ancho elegido. ~x & mask.
  • NAND / NOR / XNOR: el resultado de AND / OR / XOR con cada bit invertido. Mismas reglas de enmascaramiento.
  • SHL (<<): desplazamiento a la izquierda, se rellena con ceros por la derecha. Los bits que salen por el extremo alto se descartan. Un desplazamiento >= ancho deja el valor a cero.
  • SHR (>>): desplazamiento lógico a la derecha, se rellena con ceros por la izquierda.
  • SAR (>>>): desplazamiento aritmético a la derecha — replica el bit alto para que un valor negativo en complemento a dos siga siendo negativo. Un desplazamiento de width produce 0 si el bit alto está desactivado, o todo unos si está activado.
  • ROL / ROR: rotar a la izquierda / derecha. Los bits que caen por un extremo reentran por el otro. Rotar por width es la identidad.
  • Selector de ancho de bits: cambia la máscara para las entradas y el número de dígitos en la salida hex / bin / oct. Cambia a 64 bits para valores sin signo de 64 bits; todo lo que esté por debajo se limita a la precisión de Number de 32 bits.
  • Cálculo con BigInt: toda la aritmética interna se hace con BigInt, así que el rango de 64 bits se mantiene exacto incluso para valores por encima de 2^53.
  • Entrada literal: las cajas A / B aceptan decimal (42), hex (0x2A), octal (0o52), binario (0b101010) y guiones bajos de literales JS (1_000_000).