Saltar al contenido
Favoritos

Conversor de ASCII

Actualizado:

Convierte texto en códigos de caracteres separados por espacios o vuelve a convertir códigos decimales en texto. Introduce tu contenido y elige A ASCII o A texto.

Conversor de texto a código ASCII

Campos de entrada
Si está activado, el resultado se actualizará automáticamente al cambiar cualquier valor.

Fórmula del conversor de ASCII

Fórmula
\[ a_i=\operatorname{codeUnit}(c_i),\qquad c_i=\operatorname{fromCodeUnit}(a_i\bmod 65536) \]

Donde:

  • \(c_i\) — una unidad de código UTF-16 del texto.
  • \(a_i\) — su valor numérico decimal.
  • \(i\) — la posición de la unidad de código en la entrada.

A ASCII muestra el valor decimal de cada unidad de código UTF-16, separado por espacios. A texto convierte cada número entero decimal proporcionado de nuevo en una unidad de código UTF-16; la operación módulo describe cómo se tratan los enteros válidos fuera del rango 0–65535.

Conversor de ASCII – Ejemplo de cálculo

Ejemplo: introduce Hi! como Contenido y selecciona A ASCII. Los caracteres tienen los valores decimales 72, 105 y 33.

\[ \text{Hi!}\longrightarrow 72\quad 105\quad 33 \]

Resultado: 72 105 33. Para invertir la conversión, selecciona A texto e introduce 72 105 33; el resultado es Hi!.

Cómo usar el conversor de ASCII

  1. Introduce tus datos en Contenido. Para A ASCII, escribe el texto que quieres convertir. Para A texto, introduce códigos decimales separados por espacios u otro tipo de espacio en blanco, como 72 105 33.
  2. Elige el Tipo: A ASCII para la conversión de texto a números, o A texto para la conversión de números a texto.
  3. Lee el valor convertido en Resultado. Puedes copiarlo para usarlo en otra parte.

El campo Contenido empieza vacío, así que introduce algo antes de convertir. A texto elimina los espacios en blanco alrededor de la lista de códigos y trata los espacios en blanco entre códigos como separadores. Para representar un espacio en el texto descodificado, incluye el código 32.

Qué significan los códigos

ASCII asigna números a 128 caracteres y códigos de control, numerados del 0 al 127. Algunos ejemplos comunes son A como 65, a como 97 y el carácter de espacio como 32. Convertir letras conocidas a sus códigos numéricos puede ayudarte a inspeccionar texto, comprobar datos intercambiados entre programas o entender cómo se representan los caracteres.

A pesar de su nombre, este conversor no se limita a los valores ASCII. En el modo A ASCII, utiliza la representación UTF-16 de JavaScript: toma cada unidad de código UTF-16 y muestra su valor decimal. Los caracteres ASCII estándar producen sus números ASCII habituales. Muchos otros caracteres producen valores superiores a 127, por lo que esos valores no deben describirse como códigos ASCII estándar.

En el modo A texto, el conversor lee cada entrada separada por espacios en blanco como un número entero decimal y crea a partir de él una unidad de código UTF-16. Los códigos del 0 al 127 corresponden al ASCII estándar; otros valores válidos de unidad de código pueden producir caracteres no ASCII. El resultado también puede contener caracteres invisibles, como un salto de línea, por lo que su aspecto puede no revelar todos los códigos que contiene.

Esta distinción importa sobre todo con los emoji y algunos símbolos menos comunes. Se representan mediante dos unidades de código UTF-16, de modo que A ASCII produce dos números en lugar de un único punto de código Unicode. Si necesitas bytes u otra codificación, este resultado no es una lista de bytes UTF-8.

Supuestos y consejos prácticos

  • Usa números decimales para A texto. Por ejemplo, 65 66 67 produce ABC. El conversor no interpreta la notación hexadecimal ni la binaria como un formato de entrada específico.
  • Separa los códigos con espacios en blanco. El conversor no usa comas como separadores, así que evita entradas como 65,66.
  • Para incluir un espacio, una tabulación o un salto de línea en el texto descodificado, usa 32, 9 o 10, respectivamente. Los espacios escritos entre códigos numéricos solo separan las entradas.
  • Usa códigos enteros válidos para obtener resultados predecibles. Esta herramienta no valida cada entrada antes de la conversión: los valores mal formados pueden producir un carácter inesperado o invisible. Los enteros fuera del rango de unidades de código UTF-16 se ajustan a un valor entre 0 y 65535.
  • Copia el resultado si los caracteres invisibles dificultan su inspección en la página. Para comprobar de forma independiente cuánto texto has introducido, prueba el Contador de caracteres.

Si trabajas con representaciones de números en lugar de códigos de caracteres, el Conversor de hexadecimal y el Conversor de binario manejan otros formatos numéricos. Sus resultados no son intercambiables con los códigos decimales de caracteres separados por espacios de este conversor sin un paso de interpretación adicional.

Valores ASCII habituales

Carácter o control Código decimal
Espacio 32
Signo de exclamación (!) 33
Dígito 0 48
A mayúscula 65
a minúscula 97
Avance de línea 10

La tabla muestra valores decimales, que coinciden con los números que este conversor produce para estos caracteres ASCII. El avance de línea es un carácter de control: crea un salto de línea en lugar de una letra visible.

Preguntas frecuentes

¿Cómo puedo encontrar los códigos ASCII a mano?

Usa una tabla ASCII como valor de partida y luego cuenta hacia delante. La A mayúscula es 65, así que la C es 67; la a minúscula es 97, así que la c es 99. Los dígitos empiezan en 48 para el 0, de modo que el 7 equivale a 55. Estos atajos funcionan para los caracteres ASCII estándar, no para símbolos Unicode arbitrarios.

¿Qué rango de valores ASCII debo esperar para letras y dígitos?

Los valores ASCII estándar van de 0 a 127. Las letras mayúsculas ocupan el rango 65–90, las minúsculas 97–122 y los dígitos 48–57. No existe un valor «bueno»: el número identifica un carácter en lugar de medir su calidad. Los valores superiores a 127 pueden ser un resultado válido de este conversor, pero no son valores ASCII estándar.

¿Por qué una letra acentuada tiene un valor de bytes UTF-8 diferente?

Este conversor muestra unidades de código UTF-16, no bytes codificados. Por ejemplo, é produce aquí el valor decimal 233, mientras que su codificación UTF-8 consta de dos bytes, 195 y 169. Ambas representaciones describen el mismo carácter de formas distintas. Usa un codificador UTF-8 si necesitas los bytes para un archivo o un mensaje de red.

¿Por qué hay más números que caracteres visibles?

Un carácter visible no siempre corresponde a una sola unidad de código UTF-16. Un emoji puede producir dos números, y una letra seguida de un acento combinante puede producir números separados aunque parezca un solo carácter. También pueden aparecer caracteres de fin de línea sin mostrarse como símbolos visibles. Cuenta el resultado en unidades de código, no necesariamente en los caracteres que ve el lector.

¿Qué ocurre si introduzco un número negativo o un código no válido?

Los enteros negativos se ajustan al rango de unidades de código UTF-16: por ejemplo, −1 se convierte en 65535. El conversor no valida estrictamente las entradas; interpreta el comienzo de cada elemento como un número entero decimal. Así, `65abc` puede convertirse en A, mientras que un elemento sin ningún número interpretable puede convertirse en un carácter nulo invisible. Usa números enteros sencillos para obtener resultados fiables.

¿Por qué los saltos de línea a veces corresponden a 10 y otras a 13 10?

Los distintos sistemas representan los finales de línea de manera diferente. Un salto de línea al estilo Unix suele ser un avance de línea, código 10. Un final de línea al estilo Windows suele usar retorno de carro seguido de avance de línea, códigos 13 10. Si comparas texto convertido de distintas fuentes, comprueba ambos códigos; el resultado mostrado puede verse igual a pesar de los diferentes valores subyacentes.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *