Conversor de base / radix
ConversiónConvierte enteros entre bases 2–62 con BigInt, así incluso números muy grandes mantienen precisión total.
- Decimal
En esta página
¿Qué es un conversor de base / radix?#
Todo número entero es el mismo número; solo cambia su escritura al cambiar de base. 255 en decimal, ff en hexadecimal, 11111111 en binario y 377 en octal son cuatro cadenas para la misma cantidad. Un conversor de radix traduce una escritura en otra, y la razón de que merezca ser una herramienta de verdad y no un simple parseInt es que el Number de JavaScript pierde precisión de forma silenciosa a partir de 2^53 (unos 16 dígitos decimales), de modo que convertir un identificador de 64 bits como 18446744073709551616 con Number plano te devuelve otro número distinto sin previo aviso.
Esta página está basada en BigInt de extremo a extremo, así que un entero de tamaño arbitrario mantiene toda su precisión en cada conversión. Admite bases de 2 a 62 usando el alfabeto canónico de dígitos 0-9, luego a-z, luego A-Z. Para mayor comodidad, las bases de 2 a 36 no distinguen mayúsculas (puedes teclear FF para el hexadecimal 255), mientras que las bases de 37 a 62 sí las distinguen, porque en base 62 la a minúscula y la A mayúscula son dos dígitos genuinamente distintos (10 y 36).
Cómo se usa#
- Escribe el Valor que quieres convertir. La página arranca con
255. - Pon De base en la base en la que está escrito tu valor (los desplegables ofrecen de 2 a 62; por defecto, 10, decimal).
- Pon A base en la base que quieres (por defecto, 16, hexadecimal). La flecha entre ambos es solo una pista visual.
- La caja de Salida muestra la escritura convertida en vivo, y la fila Decimal debajo muestra el mismo valor en base 10, una comprobación útil cuando conviertes entre dos bases que no dominas.
- Ejemplo recarga el valor por defecto y Limpiar vacía el campo. Un dígito no válido para la base elegida se notifica en la línea de estado (teclear
8en base 8, ogen base 16, no producirá disparates en silencio).
Características clave#
- Precisión BigInt. La conversión se ejecuta sobre enteros de precisión arbitraria, así que
2^64y valores mayores se reflejan exactos en ambos sentidos. No hay barranco en 2^53 ni aproximaciones de coma flotante. - Bases de 2 a 62. Cubre binario, octal, decimal, hex, base32, base36, alfabetos estilo base58 y la base62 completa: el rango que los sistemas reales utilizan.
- Análisis que distingue mayúsculas. Las bases 2–36 aceptan cualquier mayúscula por comodidad; las bases 37–62 tratan la mayúscula como significativa, de modo que
ayAsiguen siendo dígitos distintos, conforme al alfabeto canónico de 62 símbolos. - Admite guiones bajos como separador de grupos. Puedes pegar
1_000y se lee como1000, la misma convención que muchos lenguajes de programación usan para mejorar la legibilidad. - Consciente del signo. Los valores negativos se convierten correctamente; el signo menos se conserva en todas las bases.
Ejemplo práctico#
Con el valor por defecto 255, De base 10, A base 16, el panel muestra:
Output: ff
Decimal: 255
Cambia A base a 2 y obtienes 11111111, ocho bits, el valor que cabe exactamente en un byte, razón por la que ff es una vista tan familiar en códigos de color y volcados de bytes.
La verdadera razón de BigInt aparece con un valor de 64 bits. Teclea 18446744073709551616 (es decir, 2^64), De base 10, A base 16:
Output: 10000000000000000
Decimal: 18446744073709551616
Eso es un 1 seguido de dieciséis ceros, exactamente 2^64 en hex. Un conversor construido sobre Number de JavaScript habría redondeado la entrada a 18446744073709552000 antes incluso de empezar, y no te habrías dado cuenta. Devuélvelo a De base 16 / A base 10 y el decimal original reaparece sin cambios, la prueba de que no se ha perdido precisión.
Preguntas frecuentes#
¿Por qué FF funciona en hex pero no en base 62?#
Las bases de 2 a 36 comparten un único rango de letras (a–z, asignadas a 10–35), así que la mayúscula no importa y FF = ff = 255. A partir de la base 37 el alfabeto necesita más de 26 letras, así que se extiende a las mayúsculas: a=10, b=11 … z=35, A=36, B=37 … Z=61. Una vez que ambos casos están en uso, a y A son dígitos distintos, de modo que el analizador debe conservar la mayúscula.
¿Qué pasa si tecleo un dígito no válido para la base?#
Obtienes un error claro, no una respuesta equivocada. Teclear 8 o 9 con De base 8 (octal), o g con De base 16 (hex), se rechaza porque esos caracteres no son dígitos válidos en esa base. La línea de estado te indica el carácter conflictivo.
¿Por qué la herramienta muestra una fila Decimal cuando estoy convirtiendo a otra base?#
Porque el decimal es la base en la que razonan los humanos, así que es la comprobación natural. Si conviertes la q de base 58 a base 16 y ves 1a, la fila Decimal (26) te permite confirmar que «sí, el símbolo número 58-ish realmente significaba veintiséis» sin hacer tú mismo la aritmética.
¿Gestiona números fraccionarios como 3.14?#
No, este conversor funciona solo con enteros. La conversión de radix de una parte fraccionaria es un problema distinto (produce expansiones infinitas periódicas en la mayoría de las bases, igual que hace 1/3 en decimal), y truncarla en silencio resultaría engañoso. Para valores enteros de cualquier tamaño, la conversión es exacta e instantánea.