¿Qué es el conversor de texto a binario / ASCII?
Esta herramienta transforma cualquier texto que escribas en su representación binaria. Los ordenadores almacenan el texto como números mediante una codificación de caracteres; para las letras, cifras y signos de puntuación básicos del inglés, esa codificación es ASCII. Cada carácter se corresponde con un código numérico, que aquí se muestra como una cadena binaria de 8 bits (ocho ceros y unos). El conversor también muestra los códigos ASCII en decimal y sus equivalentes en hexadecimal, para que puedas comprobar el resultado en cualquier base.
Cómo usarlo
Escribe o pega tu texto en el cuadro de entrada y pulsa enviar. El cuadro principal muestra la cadena binaria completa, con un grupo de 8 bits por carácter separados por espacios. La tabla inferior recoge los códigos ASCII en decimal y los valores hexadecimales correspondientes, además del número de caracteres y el total de bits. Los espacios y los signos de puntuación también cuentan como caracteres: un espacio es el ASCII 32.
La fórmula explicada
Para cada carácter c tomamos su código de carácter (el mismo valor que devuelve charCodeAt en JavaScript), convertimos ese número entero a base 2 y lo rellenamos con ceros por la izquierda hasta alcanzar 8 dígitos. La conversión se expresa así:
Por ejemplo, la letra A tiene el código ASCII 65, que en binario es 1000001 y, rellenado, queda como 01000001. Total de bits:
$$\text{bits} = 8 \times n_{chars}$$
Ejemplo resuelto
Convirtamos la palabra Hi. La "H" es el ASCII 72 → binario 01001000 → hexadecimal 48. La "i" es el ASCII 105 → binario 01101001 → hexadecimal 69. Así, "Hi" se convierte en 01001000 01101001, en decimal 72 105 y en hexadecimal 48 69, usando \(16 = 8 \times 2\) bits repartidos en 2 caracteres.
Tabla de Referencia de Caracteres ASCII
El ASCII estándar asigna a cada carácter un número del 0 al 127. En este convertidor, el código decimal de cada carácter se convierte a un valor binario de 8 bits (rellenado con ceros a la izquierda para ocupar 8 bits) y a un valor hexadecimal de dos dígitos. La tabla a continuación enumera los caracteres imprimibles comúnmente utilizados.
| Carácter | Decimal | Binario de 8 bits | Hex |
|---|---|---|---|
| (espacio) | 32 | 00100000 | 20 |
| ! | 33 | 00100001 | 21 |
| 0 | 48 | 00110000 | 30 |
| 1 | 49 | 00110001 | 31 |
| 5 | 53 | 00110101 | 35 |
| 9 | 57 | 00111001 | 39 |
| : | 58 | 00111010 | 3A |
| ? | 63 | 00111111 | 3F |
| @ | 64 | 01000000 | 40 |
| A | 65 | 01000001 | 41 |
| B | 66 | 01000010 | 42 |
| M | 77 | 01001101 | 4D |
| Z | 90 | 01011010 | 5A |
| a | 97 | 01100001 | 61 |
| b | 98 | 01100010 | 62 |
| m | 109 | 01101101 | 6D |
| z | 122 | 01111010 | 7A |
Por ejemplo, la letra mayúscula A tiene código decimal 65, que en binario es 1000001 y, rellenado a 8 bits, se convierte en 01000001. Como un solo carácter, la palabra "Hi" se codifica como 01001000 01101001.
Términos Clave Explicados
- Bit
- La unidad más pequeña de datos digitales, que contiene un único valor de 0 o 1 (un dígito binario).
- Byte
- Un grupo de 8 bits. Un byte puede representar 256 valores distintos (\(2^8 = 256\)), lo que es exactamente suficiente para almacenar un carácter ASCII extendido.
- ASCII
- El Código Estándar Estadounidense para el Intercambio de Información — un estándar de codificación de caracteres que asigna 128 caracteres (códigos 0–127), incluidas letras, dígitos, puntuación y códigos de control, a números.
- Unicode
- Un estándar de carácter universal que va mucho más allá de ASCII para cubrir prácticamente todos los sistemas de escritura, símbolos y emoji. Los primeros 128 puntos de código Unicode son idénticos a ASCII.
- Punto de código
- El valor numérico asignado a un carácter dentro de un conjunto de caracteres. Para la letra "A", el punto de código es 65 tanto en ASCII como en Unicode.
- Binario
- El sistema de numeración en base 2, que utiliza solo los dígitos 0 y 1. Cada posición representa una potencia de dos (1, 2, 4, 8, …).
- Decimal
- El sistema de numeración en base 10 utilizado en el conteo cotidiano, con dígitos 0–9 y posiciones que representan potencias de diez.
- Hexadecimal
- El sistema de numeración en base 16, que utiliza dígitos 0–9 y letras A–F. Un dígito hexadecimal representa exactamente 4 bits, por lo que dos dígitos hexadecimales representan un byte.
- Relleno / Rellenar por la izquierda
- Agregar ceros al frente de un valor binario para que cada carácter ocupe un ancho uniforme. Los bytes ASCII se rellenan por la izquierda a 8 bits — por ejemplo, el código 65 (binario 1000001) se convierte en 01000001.
Tabla de Conversión Binaria, Decimal y Hexadecimal
La tabla a continuación muestra cómo el mismo valor aparece en decimal (base 10), binario (base 2) y hexadecimal (base 16). Observe cómo cada potencia de dos añade un dígito binario más, y cómo cada 4 bits binarios se asignan limpiamente a un solo dígito hexadecimal.
| Decimal | Binario (8 bits) | Hex |
|---|---|---|
| 0 | 00000000 | 00 |
| 1 | 00000001 | 01 |
| 2 | 00000010 | 02 |
| 3 | 00000011 | 03 |
| 4 | 00000100 | 04 |
| 5 | 00000101 | 05 |
| 6 | 00000110 | 06 |
| 7 | 00000111 | 07 |
| 8 | 00001000 | 08 |
| 9 | 00001001 | 09 |
| 10 | 00001010 | 0A |
| 11 | 00001011 | 0B |
| 12 | 00001100 | 0C |
| 13 | 00001101 | 0D |
| 14 | 00001110 | 0E |
| 15 | 00001111 | 0F |
| 16 | 00010000 | 10 |
| 32 | 00100000 | 20 |
| 64 | 01000000 | 40 |
| 128 | 10000000 | 80 |
| 255 | 11111111 | FF |
Como verificación, el decimal 255 es el valor más grande que un solo byte puede contener; su forma hexadecimal es FF y su forma binaria tiene los ocho bits configurados en 1. De manera similar, el decimal 64 se convierte a binario 1000000, que se rellena a 01000000.
Preguntas frecuentes
¿Admite caracteres que no son del inglés? El ASCII estándar cubre los puntos de código del 0 al 127. Los caracteres por encima de 127 (tildes, eñes, emojis) usan su punto de código Unicode, que puede superar los 8 bits y no encajar en el ASCII estándar.
¿Por qué 8 bits por carácter? Un byte equivale a 8 bits y el ASCII tradicionalmente cabe en un byte, así que la agrupación de 8 bits es la representación convencional.
¿Puedo convertir binario de nuevo a texto? Esta herramienta convierte texto a binario. Para hacer el proceso inverso, divide el binario en grupos de 8 bits y asigna a cada valor su carácter ASCII correspondiente.