Convertidor Texto ↔ Hex

Codifica texto en hexadecimal y decodifica hexadecimal de vuelta a texto legible — compatible con UTF-8, todo en tu navegador.

1.071 visitas

Texto a Hex

Hex a Texto

¿Cómo Funciona la Codificación de Texto a Hexadecimal?

El hexadecimal es un sistema numérico posicional en base 16: 16 símbolos (0-9, y luego A-F para 10-15) donde la posición de cada dígito vale una potencia de 16. La razón por la que encaja tan naturalmente con la informática es que un dígito hexadecimal representa exactamente 4 bits (un "nibble") — así que dos dígitos hexadecimales siempre representan exactamente un byte (8 bits), sin redondeo ni ambigüedad. Por eso un valor de byte nunca necesita más de dos caracteres hexadecimales: 0-255 se mapea de forma limpia a 00-FF.

Esta herramienta convierte texto hacia y desde esa representación. El texto se convierte primero a bytes en bruto usando UTF-8 (de modo que cada carácter, incluidas las letras turcas y los emojis, sobrevive el proceso de ida y vuelta), y luego cada byte se escribe como su par hexadecimal de dos dígitos: "Hi" se convierte en 48 69, porque la letra H es el byte 72 (0x48) e i es el byte 105 (0x69). Un ejemplo concreto con un carácter no ASCII: "çay" se codifica como C3 A7 61 79 — "ç" por sí sola ocupa dos bytes (C3 A7) porque queda fuera del rango ASCII de un solo byte, mientras que "a" e "y" ocupan un byte cada una. La decodificación invierte el proceso, ignorando espacios, saltos de línea y prefijos "0x".

Esta correspondencia entre texto, bytes y hexadecimal también hace que la herramienta sea útil más allá de la curiosidad: pegar un volcado hexadecimal de un sniffer de red o una consola serie y leerlo de vuelta como texto, incrustar una pequeña carga binaria dentro de una cadena JSON como hexadecimal, o verificar que un valor producido por tu propio código coincide con lo que un documento de especificación muestra en hexadecimal — todo esto no es más que la dirección de codificación/decodificación aplicada a una tarea real de depuración.

Qué Debes Saber

  • La codificación hexadecimal no es cifrado: solo cambia la representación de los datos, no su confidencialidad. Cualquier cadena hexadecimal se decodifica instantánea y deterministamente de vuelta a los bytes originales — quien tenga la cadena puede leerla. Para confidencialidad real usa cifrado de verdad (por ejemplo, AES), no codificación.
  • Por qué importan los 4 bits por dígito: un nibble (4 bits) tiene exactamente 16 valores posibles (0000-1111 en binario), que se mapean uno a uno sobre un único dígito hexadecimal sin que sobre nada — a diferencia del decimal, donde convertir binario a base 10 requiere aritmética sobre todo el número. Por eso el hexadecimal aparece en los códigos de color (#RRGGBB — tres bytes, seis dígitos hexadecimales), en direcciones de memoria y en depuración de bajo nivel: es la vista legible más compacta del binario en bruto.
  • UTF-8 es de ancho variable: los caracteres ASCII ocupan un byte, pero las letras acentuadas y la mayoría de las escrituras no latinas ocupan dos, y los emojis a menudo ocupan cuatro — por eso la longitud de la salida hexadecimal no es simplemente "dos caracteres por letra visible" una vez que hay texto no ASCII involucrado.
  • Formatos de entrada aceptados: el decodificador acepta pares hexadecimales con o sin espacios, saltos de línea o prefijos "0x" — "48 69", "4869" y "0x48 0x69" se decodifican todos como "Hi".
  • Las mayúsculas no importan para decodificar: las letras hexadecimales A-F pueden escribirse en mayúscula, minúscula o mezcladas y se decodificarán de forma idéntica, ya que ambas representan los mismos valores de cuatro bits — solo importan la agrupación y el orden de los bytes.

Preguntas Frecuentes

¿Es segura la codificación hexadecimal?

No — solo cambia la representación, no la confidencialidad. Cualquiera puede decodificar hexadecimal al instante. Para datos confidenciales usa cifrado real (por ejemplo, AES).

¿Se admiten los caracteres turcos y los emojis?

Sí. La herramienta codifica mediante UTF-8, así que cada carácter Unicode — acentos, letras turcas, emojis — se convierte y se restaura correctamente, aunque algunos caracteres ocupen más de un byte.

¿Qué formatos de entrada acepta el decodificador?

Pares hexadecimales simples con o sin espacios, saltos de línea o prefijos "0x": "48 69", "4869" y "0x48 0x69" se decodifican todos como "Hi".

¿Por qué un dígito hexadecimal siempre equivale a 4 bits?

Porque 4 bits pueden representar exactamente 16 valores distintos (2⁴ = 16), que coinciden uno a uno con los 16 símbolos del hexadecimal (0-9, A-F). Por eso convertir entre binario y hexadecimal es pura correspondencia directa, sin necesidad de división ni aritmética de resto, a diferencia de convertir a decimal.

¿Por qué los códigos de color como #FF5733 usan hexadecimal en lugar de decimal?

Los canales rojo, verde y azul de un color se almacenan cada uno como un solo byte (0-255), y el hexadecimal representa un byte de forma compacta con exactamente dos dígitos — #FF5733 se lee al instante como tres bytes, FF, 57 y 33, mientras que el equivalente decimal (255, 87, 51) necesita comas separadoras y números de longitud variable, lo cual es más incómodo de escribir en CSS o en una herramienta de diseño.

Comentarios

Aún no hay comentarios — ¡sé el primero en escribir uno!

Herramientas Similares