que es el codigo ascii

¿Qué es el código ASCII? Secretos, estructura y aplicaciones

rafael.marin
26/12/2024

El código ASCII (American Standard Code for Information Interchange) es uno de los pilares fundamentales de la informática moderna. Este sistema de codificación, desarrollado en los años 60, estandarizó la representación de caracteres en sistemas digitales, permitiendo una comunicación uniforme entre dispositivos y plataformas.

En este artículo entenderás qué es ASCII, cómo se estructura, el proceso para convertir código binario en ASCII y ejemplos prácticos de su aplicación.

¿Qué es y para qué sirve el código ASCII?

El código ASCII es un esquema de codificación que asigna un valor numérico único a letras, números, símbolos y caracteres de control. Su principal función es estandarizar la representación de texto en ordenadores y otros dispositivos que utilicen procesamiento de información.

Cada carácter ASCII tiene un código decimal, hexadecimal y binario asociado, lo que facilita su interpretación por máquinas.

Por ejemplo, el código ASCII asigna el número 65 al carácter ‘A’ y el número 97 a la letra ‘a’. Esto permite que, al escribir una letra en un teclado, el dispositivo pueda traducir esa acción en un valor numérico interpretable.

El código ASCII es ampliamente utilizado para:

  • Representar texto en sistemas digitales.
  • Facilitar la comunicación entre diferentes dispositivos.
  • Implementar comandos de control, como saltos de línea y tabulaciones.
  • Simplificar la entrada de caracteres especiales mediante combinaciones conocidas como códigos Alt.

Cómo se estructura el código ASCII

El código ASCII está compuesto por 128 caracteres, representados en 7 bits. Estos se dividen en varias categorías, que incluyen caracteres de control, caracteres imprimibles y extensiones modernas que utilizan 8 bits para soportar más caracteres.

1. Caracteres de control (0–31 y 127)

Los caracteres de control son códigos que no representan símbolos visibles, sino comandos para dispositivos. Estos se utilizan principalmente para controlar dispositivos de salida como impresoras o para marcar el inicio y fin de ciertas operaciones. Ejemplos clave:

  • 0 (NUL): indica un carácter nulo.
  • 10 (LF): salto de línea.
  • 13 (CR): retorno de carro.
  • 27 (ESC): escape, usado para comandos de control avanzados.
  • 127 (DEL): indica una eliminación.

2. Caracteres imprimibles (32–126)

Estos son los caracteres que se pueden ver y escribir directamente. Incluyen letras, números, símbolos y el espacio en blanco. Algunos ejemplos destacados:

  • 32: espacio en blanco.
  • 48–57: dígitos del 0 al 9.
  • 65–90: letras mayúsculas de la A - Z.
  • 97–122: letras minúsculas de la a - z.
  • 64 (‘@’): símbolo arroba, crucial para direcciones de correo electrónico.
  • 33—7: símbolos especiales cómo !, #, $, % y &.

3. Extensiones ASCII (128–255)

En sistemas modernos, se amplió el código ASCII para incluir caracteres internacionales y gráficos, utilizando 8 bits. Esto permite representar caracteres acentuados como á, ñ o ü, comunes en muchos idiomas.

Extended ASCII (128–255)

El código ASCII ampliado, conocido como Extended ASCII, es una extensión de 8 bits que introduce 128 caracteres adicionales, abarcando desde el código 128 al 255.

Esta ampliación fue diseñada para cubrir las necesidades de idiomas diferentes al inglés y para incluir caracteres gráficos y símbolos adicionales. Es importante destacar que Extended ASCII no es un estándar único; existen varias implementaciones, como ISO 8859-1 (Latín-1).

El código ASCII ampliado presenta una serie de características como:

  1. Soporte multilingüe: incluye caracteres acentuados como é, à, ü y ñ, comunes en idiomas como el español, francés y alemán.
  2. Caracteres especiales: introduce símbolos gráficos, líneas, cuadros y otros elementos visuales utilizados en interfaces de texto y diseño gráfico.
  3. Ampliación de símbolos: incluye signos de moneda como el euro (€) y caracteres matemáticos como ≤ (menor o igual).

El uso de Extended ASCII es usual en sistemas antiguos, editores de texto simples y ciertos entornos de programación. Aunque ha sido reemplazado en gran medida por Unicode en aplicaciones modernas, su comprensión sigue siendo esencial para trabajar con sistemas legados o tareas específicas que no requieren un conjunto de caracteres extenso.

Tabla de código ASCII

A continuación, se presenta una tabla resumida con los valores más relevantes del código ASCII:

DecimalHexadecimalCarácterDescripción
3220(Espacio)Espacio en blanco
48300Dígito cero
6440@Símbolo arroba
6541ALetra mayúscula A
9761aLetra minúscula a
1277FDELCarácter de eliminación

Para la tabla completa, puedes consultar fuentes online o utilizar herramientas de referencia como ASCII to text converter.

Cómo pasar código binario a ASCII

La conversión de código binario a ASCII implica traducir un conjunto de bits en un carácter según la tabla ASCII. Veamos un ejemplo de este proceso para el término “Programa”. Esto se lleva a cabo siguiendo una serie de pasos:

  1. Dividir la cadena binaria en bloques de 7 u 8 bits: ASCII básico utiliza 7 bits por carácter, pero en muchos casos se emplean 8 bits para alineación. Si tenemos la palabra “Programa” hay que separar cada carácter en bloques individuales de cada letra y su representación binaria. Por lo tanto, quedaría:  01010000 01110010 01101111 01100111 01110010 01100001 01101101 01100001.
  2. Convertir el bloque binario a decimal: cada bloque se convierte a su equivalente decimal aplicando la fórmula de pesos por posición en binario:
  • Para 01010000: 0×2^7+1×2^6+0×2^5+1×2^4+0×2^3+0×2^2+0×2^1+0×2^0=80
  • Para 01110010: 0×2^7+1×2^6+1×2^5+1×2^4+0×2^3+0×2^2+1×2^1+0×2^0=114
  • Para 01101111: 0×2^7+1×2^6+1×2^5+0×2^4+1×2^3+1×2^2+1×2^1+1×2^0=111
  • Para 01100111: 0×2^7+1×2^6+1×2^5+0×2^4+0×2^3+1×2^2+1×2^1+1×2^0=103
  • Para 01110010: 0×2^7+1×2^6+1×2^5+1×2^4+0×2^3+0×2^2+1×2^1+0×2^0=114
  • Para 01100001: 0×2^7+1×2^6+1×2^5+0×2^4+0×2^3+0×2^2+0×2^1+1×2^0=97
  • Para 01101101: 0×2^7+1×2^6+1×2^5+0×2^4+1×2^3+1×2^2+0×2^1+1×2^0=109
  • Para 01100001: 0×2^7+1×2^6+1×2^5+0×2^4+0×2^3+0×2^2+0×2^1+1×2^0=97
  1. Buscar el valor decimal en la tabla ASCII: una vez convertido a decimal, verifica en la tabla ASCII. En este caso:
  • El 80 corresponde a ‘P’.
  • El 114 corresponde a ‘r’.
  • El 111 corresponde a ‘o’.
  • El 103 corresponde a ‘g’.
  • El 114 corresponde a ‘r’.
  • El 97 corresponde a ‘a’.
  • El 109 corresponde a ‘m’.
  • El 97 corresponde a ‘a’.
  1. Reconstruir la cadena: unir los caracteres obtenidos para formar el texto traducido, en este caso: ‘Programa’.

Ejemplo de uso práctico del código ASCII

Un ejemplo común del uso de ASCII es la generación de textos en aplicaciones que requieren códigos Alt. Por ejemplo, para insertar el símbolo ‘@’ utilizando el teclado numérico, se puede presionar Alt + 64. Esto traduce el código decimal a su carácter correspondiente.

Otro caso práctico es en la manipulación de cadenas en lenguajes de programación como Python:

Ejemplo código ASCII

Este tipo de operaciones es común en aplicaciones de criptografía, procesamiento de texto y sistemas embebidos.

Comunicación entre humanos y máquinas

El código ASCII es un recurso esencial que facilita la comunicación entre sistemas digitales al estandarizar la representación de caracteres. Desde su estructura básica hasta su aplicación práctica en códigos Alt y conversiones binarias, ASCII sigue siendo un componente clave en la tecnología moderna.

Conocer su funcionamiento y herramientas relacionadas, como la tabla de símbolos del teclado, es imprescindible para profesionales de la informática y entusiastas de la tecnología.

Si quieres aprender más sobre esto y la comunicación con sistemas HMI y SCADA te recomiendo nuestro Curso Superior en Sistemas HMI y SCADA en Procesos Industriales y en Automatización Industrial.

Artículos relacionados

.htaccess
antonio.gutierrez

Todo lo que debes saber sobre el archivo .htaccess

23/12/2024

El archivo .htaccess es uno de los archivos más importantes en nuestra web, siendo un archivo especial que cumple un papel fundamental en los principales gestores de conten

Clave SSH
jefferson.mera

Aprende a crear una clave SSH

28/11/2024

El uso de claves SSH (Secure Shell) es una práctica fundamental para garantizar la seguridad y autenticación en la conexión a servidores.

Form en PHP
rafael.marin

Creación y gestión de formularios con HTML y PHP

27/11/2024

Un formulario es una de las herramientas más utilizadas e importante en el desarrollo web, ya que permite recopilar y enviar datos de los usuarios para procesarlos