Conversor de bases numéricas: binario, octal, decimal y hexadecimal

Convierte enteros entre cuatro sistemas posicionales habituales: binario (base 2), octal (base 8), decimal (base 10) y hexadecimal (base 16). El cálculo usa BigInt de JavaScript, por lo que los enteros admitidos no se redondean a la precisión de coma flotante.

Listo para convertirIntroduce un número y elige las bases

Consejos para introducir el valor

  • El binario solo admite 0 y 1 (por ejemplo, 1101).
  • El octal admite dígitos del 0 al 7 (por ejemplo, 755).
  • El hexadecimal admite dígitos del 0 al 9 y letras A–F, en mayúsculas o minúsculas (por ejemplo, 1F o a3).
  • Solo para hexadecimal, se acepta el prefijo opcional 0x o 0X. Este formulario no acepta los prefijos 0b de binario ni 0o de octal.
  • El campo admite hasta 4.096 dígitos. Esta herramienta convierte enteros no negativos, no fracciones ni valores negativos.

Cómo funcionan los sistemas posicionales

Binario (base 2)

Usa los dígitos 0 y 1. Cada posición representa una potencia de 2. Los ordenadores codifican información mediante estados digitales, y el binario permite describir esos valores.

Octal (base 8)

Usa dígitos del 0 al 7. Cada dígito octal corresponde a tres dígitos binarios, por lo que resulta práctico como abreviatura de algunos patrones de bits, incluidos permisos de estilo Unix.

Decimal (base 10)

Usa dígitos del 0 al 9 y es el sistema cotidiano para la mayoría de las personas. Cada posición representa una potencia de 10.

Hexadecimal (base 16)

Usa dígitos del 0 al 9 y letras de la A a la F. Cada dígito hexadecimal representa exactamente cuatro dígitos binarios, lo que permite escribir secuencias largas de forma más compacta.

Ejemplos resueltos

  • Binario 1010 → decimal 10: 1×8 + 0×4 + 1×2 + 0×1 = 10.
  • Decimal 255 → hexadecimal FF.
  • Hexadecimal 3F → binario 111111 (o 0011 1111 si se agrupa en bloques de cuatro bits).
  • Octal 755 → decimal 493: 7×64 + 5×8 + 5 = 493.

Usos habituales de estas bases

  • Programación: máscaras de bits, indicadores y representaciones de direcciones.
  • Electrónica: estados digitales y valores de registros.
  • Diseño web: códigos hexadecimales de color, como #FF6B35.
  • Sistemas operativos: la notación octal se usa a menudo para describir los bits de permisos de archivos Unix.
  • Base64 codifica bytes como texto; no es una base posicional. Para ese formato, utiliza una herramienta de codificación de texto.

Tabla de conversión rápida

DecimalBinarioOctalHexadecimal
81000108
15111117F
16100002010
64100000010040
25511111111377FF
1024100000000002000400

Un método manual rápido

Para convertir de decimal a binario, divide sucesivamente entre 2 y lee los restos de abajo hacia arriba. Para 13, los restos son 1, 0, 1, 1, que forman 1101. Para pasar de binario a hexadecimal, agrupa los bits de cuatro en cuatro desde la derecha: 11010110 se convierte en 1101 | 0110, es decir, D6.

Preguntas frecuentes

¿Por qué aparece 0x delante de algunos valores hexadecimales?

Es un prefijo que se usa en muchos lenguajes de programación para indicar la base 16. Por ejemplo, 0xFF representa 255. También se acepta 0X. Este campo no admite los prefijos 0b ni 0o.

¿Puede una base numérica ser mayor que 16?

Sí. Las bases posicionales pueden utilizar otros alfabetos de dígitos. La base 36 usa 0–9 y A–Z en algunos identificadores y códigos compactos. Este conversor solo ofrece las bases 2, 8, 10 y 16.

¿Puedo convertir números negativos o fraccionarios?

No. Este conversor solo admite enteros no negativos. Las fracciones y los valores negativos requieren otra representación y quedan fuera del alcance actual de la herramienta.

¿Por qué es útil el hexadecimal para los valores binarios?

Cada dígito hexadecimal equivale exactamente a cuatro bits. Por ejemplo, D6 es 1101 0110 en binario. Agrupar los bits facilita la lectura sin cambiar el valor.

Referencia técnica

MDN — BigInt.prototype.toString()

Herramienta relacionada

Para codificar texto, por ejemplo en Base64, consulta la herramienta de codificación de texto.