Codificación de caracteres ASCII

Atrás

El código ASCII (acrónimo inglés de American Standard Code for Information Interchange - Código Estadounidense Estándar para el Intercambio de Información), es un código de caracteres de 7 bits basado en el alfabeto latino. Incluye dos bloques:

Caracteres de control

Los caracteres de control de la codificación ASCII se introdujeron sobre todo para la transmisión de datos, es decir, para las telecomunicaciones.

Para poder expresarlos en C (muchos de ellos no pueden mostrarse o imprimirse) podemos utilizar su código en octal o hexadecimal, al igual que para cualquier carácter. Para algunos de ellos hay definida una secuencia de caracteres que normalmente comienzan por \ (barra invertida o antibarra).

Así, si queremos expresar un salto de línea (newline), que es el carácter 10 decimal, 128 (octal) y A16 (hexadecimal) podemos expresarlo:

Una vez nos acostumbramos suele ser más sencillo utilizar la secuencia '\n' que su código numérico ya que utiliza mnemotécnicos.


DecHexCCarDescripciónDescription
00\0NULcarácter nulonull
11\1SOHcomienzo de cabecerastart of heading
22\2STXcomienzo de textostart of text
33 ETXfin de textoend of text
44 EOTfin de transmisiónend of transmission
55 ENQpeticiónenquiry
66 ACKreconocimientoacknowledge
77\aBELtimbrebell
88 BSretrocesobackspace
99\tTABtabulador horizontalhorizontal tab
10a\nLF/NLsalto de línealine feed/new line
11b\vVFtabulador verticalvertical tab
12c\fFF/NPsalto de páginaform feed/new page
13d\rCRretorno de carrocarriage return
14e SOcambiar conjunto de caracteresshift out
15f SIvolver al conjunto de caracteresshift in
1610 DLEescape de enlace de datosdata link escape
1711 DC1control de dispositivo 1device control 1
1812 DC2control de dispositivo 2device control 2
1913 DC3control de dispositivo 3device control 3
2014 DC4control de dispositivo 4device control 4
2115 NAKreconocimiento negativonegative acknowledge
2216 SYNespera síncronasynchronous idle
2317 ETBfin de bloque de transmisiónend of transmission block
2418 CANcancelarcancel
2519 EMfin de medioend of medium
261a SUBsubstituciónsubstitute
271b ESCescapeescape
281c FSseparador de ficherofile separator
291d GSseparador de grupogroup separator
301e RSseparador de registrorecord separator
311f USseparador de unidadunit separator
1277f DELsuprimirdelete
Tabla 1. Caracteres ASCII de control

Caracteres imprimibles

En general vamos a considerar caracteres de la codificación ASCII a aquéllos que pueden mostrarse o imprimirse, aunque el espacio (carácter 32) suponga una excepción.

Rasgos estructurales:


DecHexCar DecHexCar DecHexCar DecHexCar DecHexCar DecHexCar
3220espacio 48300 6440@ 8050P 9660` 11270p
3321! 49311 6541A 8151Q 9761a 11371q
3422" 50322 6642B 8252R 9862b 11472r
3523# 51333 6743C 8353S 9963c 11573s
3624$ 52344 6844D 8454T 10064d 11674t
3725% 53355 6945E 8555U 10165e 11775u
3826& 54366 7046F 8656V 10266f 11876v
3927' 55377 7147G 8757W 10367g 11977w
4028( 56388 7248H 8858X 10468h 12078x
4129) 57399 7349I 8959Y 10569i 12179y
422a* 583a: 744aJ 905aZ 1066aj 1227az
432b+ 593b; 754bK 915b[ 1076bk 1237b{
442c, 603c< 764cL 925c\ 1086cl 1247c|
452d- 613d= 774dM 935d] 1096dm 1257d}
462e. 623e> 784eN 945e^ 1106en 1267e~
472f/ 633f? 794fO 955f_ 1116fo    
Tabla 2. Caracteres ASCII imprimibles

Atrás