Conversor de Bases Numéricas
Convertí entre binario, octal, decimal y hex, construí un valor bit a bit, y ejecutá operaciones bit a bit. Todo se calcula en tu navegador.
Convertir un número
Precisión: este panel usa BigInt de JavaScript, así que soporta enteros de cualquier tamaño, positivos o negativos. Los valores negativos se muestran en forma de signo y magnitud (ej. -101) — acá no hay un ancho de bits declarado, así que el complemento a dos no aplica. Para complemento a dos de ancho fijo, usá el panel de bits/operaciones bit a bit de abajo.
Resultados
- Binario
- —
- Octal
- —
- Decimal
- —
- Hexadecimal
- —
Bits y operaciones bit a bit
El ancho de bits es explícito y obligatorio: NOT y shift solo tienen sentido en relación a un ancho declarado, así que elegí 8/16/32/64 arriba en lugar de asumir uno. Los valores se guardan como el patrón de bits crudo para ese ancho — escribir un valor más grande de lo que entra en el ancho (o desplazar más allá del límite) trunca/da la vuelta igual que lo haría un registro real de ancho fijo, y la línea debajo de cada campo muestra exactamente qué quedó guardado.
Resultado
- Ancho
- —
- Binario
- —
- Octal
- —
- Decimal (sin signo)
- —
- Decimal (con signo)
- —
- Hexadecimal
- —
¿Qué es una base numérica?
Una base numérica (o radix) es cuántos dígitos distintos usa un sistema de conteo antes de acarrear a un nuevo valor de posición. El decimal (base 10) es el que usamos todos los días; las computadoras trabajan nativamente en binario (base 2), y los desarrolladores usan octal (base 8) y hexadecimal (base 16) como equivalentes compactos y legibles del binario — un dígito hex siempre equivale a exactamente 4 bits, y un dígito octal a exactamente 3, por eso los permisos de archivos (chmod), los códigos de color y las direcciones de memoria tan frecuentemente se escriben en esas dos bases en lugar de binario puro.
Cómo usar Conversor de Bases Numéricas
- En "Convertir un número," elegí la base en la que está escrito tu valor y escribilo (o hacé clic en Ejemplo).
- Leé el mismo valor en las cuatro bases bajo Resultados — este panel soporta enteros arbitrariamente grandes y números negativos.
- En "Bits y operaciones bit a bit," elegí un ancho de bits (8/16/32/64) — esto determina cómo se comportan NOT, shift, y la vista de bits individuales.
- Escribí el Valor A (y B, para AND/OR/XOR) en cualquier base — con prefijo
0b,0oo0x, o sin prefijo para decimal — o hacé clic en los bits individuales bajo Valor A para alternarlos directamente. - Elegí una operación y (para los shifts) una cantidad, y leé el panel Resultado.
Cómo funcionan las conversiones y la matemática bit a bit
El panel de arriba trata un número como un entero simple, de tamaño arbitrario y sin ancho fijo, convirtiéndolo entre bases con el BigInt nativo de JavaScript. Por ejemplo:
202 (decimal) → Binario: 11001010 → Octal: 312 → Hexadecimal: CA
El panel de abajo es distinto a propósito: NOT y los shifts bit a bit solo tienen sentido en relación a un ancho de bits declarado (invertir cada bit de "5" no significa nada hasta que digás si "5" vive en un registro de 8 bits o de 64 bits), así que esta herramienta siempre te pide elegir uno de 8/16/32/64 bits antes de ejecutar esas operaciones, y cada función interna que formatea o rellena un valor recibe ese ancho como parámetro explícito en lugar de asumir uno. Con un ancho de 8 bits:
A = 10110101 (0xB5), B = 01101100 (0x6C) A AND B = 00100100 (0x24) A OR B = 11111101 (0xFD) A XOR B = 11011001 (0xD9) NOT A = 01001010 (0x4A)
Los valores negativos en este panel se guardan en complemento a dos según el ancho elegido — ej. -1 en 8 bits es 11111111. El casillero "Con signo" controla si Shift Right extiende el signo (shift aritmético, usado para valores con signo) o rellena con ceros (shift lógico, usado para valores sin signo) — ambas son operaciones legítimas con usos distintos, así que esta herramienta expone la elección explícitamente en lugar de adivinar.
Preguntas frecuentes
¿Esta herramienta soporta números negativos?
Sí, de dos maneras distintas. El panel de conversión de bases muestra los números negativos en forma de signo y magnitud (ej. -101 en binario) porque no tiene un ancho de bits declarado. El panel de bits/operaciones bit a bit representa los valores negativos en complemento a dos según el ancho que elijas (8, 16, 32 o 64 bits) — marcá "Con signo" para ver la interpretación decimal en complemento a dos.
¿Qué tan grande puede ser el número que convierto?
El panel de conversión de bases usa BigInt de JavaScript, así que soporta enteros de tamaño esencialmente ilimitado, muy por encima de 64 bits. El panel de bits/operaciones bit a bit está intencionalmente limitado al ancho elegido, porque operaciones como NOT y shift solo tienen sentido en relación a un ancho de bits declarado.
¿Qué pasa si escribo un dígito inválido para la base elegida?
La entrada se rechaza con un mensaje de error inline en lugar de truncarse o interpretarse mal en silencio — escribir 8 en modo octal, o G en modo hexadecimal, muestra exactamente qué está mal en lugar de adivinar un valor.
¿Cuál es la diferencia entre shift lógico y aritmético hacia la derecha?
Un shift lógico a la derecha siempre rellena los bits altos que quedan libres con 0. Un shift aritmético a la derecha los rellena con el bit de signo, preservando el signo de un número negativo en complemento a dos. Esta herramienta usa shift aritmético cuando "Con signo" está marcado, y lógico en caso contrario.