Texto y código / Guías

Binario, hexadecimal y decimal: ¿su entrada es un número o texto?

Una secuencia de dígitos puede nombrar un número o deletrear los valores de bytes de un mensaje de texto. Decide qué interpretación tienes antes de realizar la conversión.

El numero entero sigue igual

El decimal 65, el binario 1000001 y el hexadecimal 41 son tres notaciones para un número entero no negativo. La base cambia cómo se escribe el valor, no lo que cuenta. Ingrese 65 en el convertidor de decimal a binario y luego compare el resultado de la herramienta hexadecimal. Se puede agregar un cero a la izquierda para mostrar un byte completo de ocho bits, lo que da 01000001, pero esa opción de visualización no cambia el número entero. De binario a decimal se puede invertir la notación numérica. Este flujo de trabajo tiene sentido para un identificador, una máscara de bits o un recuento que se sabe que es un número entero.

El texto primero necesita una codificación de caracteres.

La letra A es un carácter de texto. UTF-8 lo representa con un solo byte 0x41, cuyo patrón de bits es 01000001. Esto coincide con el ejemplo de entero anterior porque los caracteres ASCII ocupan esos valores de bytes en UTF-8. Pero la cadena “65” contiene dos caracteres, 6 y 5; sus bytes UTF-8 son 0x36 y 0x35. Por lo tanto, ejecutar un conversor de números en 65 y un conversor de texto a bytes en “65” responde a preguntas diferentes. Compruebe si la fuente significa un valor numérico o caracteres escritos literalmente.

Los mismos signos pueden representar un número o bytes de texto.
  1. Entero: 65₁₀ = 41₁₆ = 1000001₂
  2. Texto «A» → byte UTF-8: 41₁₆
  3. Texto «65» → bytes UTF-8: 36 35₁₆

El texto acentuado expone la distinción.

El carácter é está representado en UTF-8 por dos bytes, C3 A9 en hexadecimal. Su punto de código Unicode es U+00E9 y también puede expresarse con e seguida de un acento combinado en una forma normalizada diferente. Una herramienta de conversión de texto a binario puede mostrar dos grupos de ocho bits para el formato UTF-8 compuesto, en lugar de un grupo de ocho bits para una letra visible. Tratar el punto de código del carácter como si fuera un solo byte perdería información o produciría una salida incorrecta. Utilice la vista de bytes UTF-8 cuando solucione problemas de un protocolo de texto, no la herramienta de enteros de decimal a hexadecimal.

Vigila los límites y los separadores.

La cadena binaria 0100000101000010 se puede leer como dos bytes, 01000001 y 01000010, que deletrean AB en UTF-8. Sin una regla de agrupación y codificación de caracteres conocida, una cadena de bits simple es ambigua. El decimal 4142 no es el mismo valor que el hexadecimal 4142 y ninguno de los dos significa automáticamente dos bytes de texto. Los prefijos como 0x para espacios hexadecimales y explícitos entre bytes facilitan la lectura de un registro. Antes de decodificar los datos pegados, conserve sus delimitadores originales y averigüe si los ceros iniciales son significativos en el formato circundante.

Elija un cheque repetible

Para conversiones numéricas, registre el número entero original y su base, conviértalo y luego inviértalo con la herramienta numérica coincidente. Para texto, registre los caracteres, su normalización si es relevante y sus bytes UTF-8, luego decodifique los bytes con la herramienta de coincidencia de texto. Pruebe A, 65 y é como tres entradas de prueba independientes. Si una salida copiada parece sorprendentemente larga, cuente los bytes e inspeccione si la entrada contenía espacios, una nueva línea o caracteres que no sean ASCII. Los dos flujos de trabajo pueden coincidir en un valor de byte, pero su interpretación proviene del contrato fuente.

Prueba el convertidor

Convierta el número entero 65 a binario, luego compare texto a bytes.

Convierte un entero decimal a dígitos de base dos sin límite de tamaño.

Abrir el convertidor completo

Más guías

Guías de conversión

Explorar guías