ASCII, el Código Estándar Estadounidense para el Intercambio de Información, asigna un número del 0 al 127 a cada carácter básico usado en el texto en inglés y en las primeras comunicaciones entre ordenadores. Data de los años 60 y casi todas las codificaciones de texto modernas todavía empiezan con los mismos 128 códigos.
Tres regiones
- 0 a 31 y 127: caracteres de control. Se diseñaron para controlar teletipos y terminales, no para mostrarse. Los importantes son el tabulador (9), el salto de línea (10), el retorno de carro (13), escape (27) y suprimir (127).
- 32: el carácter espacio.
- 33 a 126: caracteres imprimibles. Dígitos, letras mayúsculas y minúsculas, signos de puntuación y símbolos.
Patrones que conviene conocer
Los dígitos del 0 al 9 son los códigos 48 a 57, así que restar 48 a un carácter dígito da su valor numérico. Las mayúsculas A a Z son 65 a 90 y las minúsculas a a z son 97 a 122. La diferencia entre una letra mayúscula y su minúscula es exactamente 32, que en binario es un solo bit. Por eso un programa puede cambiar entre mayúsculas y minúsculas invirtiendo un bit.
Caracteres de control que aún importan
- Salto de línea (10): termina una línea en Linux y macOS.
- Retorno de carro (13): combinado con el salto de línea (CRLF) termina una línea en Windows, y el desajuste es una causa clásica de caracteres extraños en archivos de texto.
- Tabulador (9): tabulación horizontal, el carácter de la tecla Tab.
- Escape (27): inicia los códigos de color de terminal y muchas secuencias de control.
- Nulo (0): marca el final de una cadena en C.
Más allá del 127
El ASCII estándar termina en el 127. Los valores 128 a 255 dependen del juego de caracteres en uso: Latin-1 añade letras acentuadas, mientras que otras páginas de códigos asignan caracteres distintos a los mismos números. La tabla puede mostrar la interpretación Latin-1 como referencia.
Preguntas frecuentes
¿ASCII es lo mismo que UTF-8? Los primeros 128 caracteres de UTF-8 son idénticos a ASCII y usan un solo byte, pero UTF-8 puede representar todos los caracteres de Unicode.
¿Cómo escribo un carácter de control? Muchas terminales aceptan Ctrl más una letra. Ctrl+C envía el código 3 y Ctrl+D envía el código 4.

