Códigos de control C0 y C1


El código de control C0 y C1 o los conjuntos de caracteres de control definen códigos de control para su uso en texto por sistemas informáticos que utilizan ASCII y derivados de ASCII. Los códigos representan información adicional sobre el texto, como la posición de un cursor, una instrucción para iniciar una nueva línea o un mensaje de que se ha recibido el texto.

Los códigos C0 son del rango 00 HEX –1F HEX y el conjunto C0 predeterminado se definió originalmente en ISO 646 ( ASCII ). Los códigos C1 son del rango 80 HEX –9F HEX y el conjunto C1 predeterminado se definió originalmente en ECMA-48 (armonizado posteriormente con ISO 6429). El sistema ISO / IEC 2022 de especificar caracteres de control y gráficos permite que otros conjuntos C0 y C1 estén disponibles para aplicaciones especializadas, pero rara vez se utilizan.

ASCII definió 32 caracteres de control, más un carácter adicional necesario para el carácter DEL, 7F HEX o 01111111 BIN (necesario para perforar todos los agujeros en una cinta de papel y borrarlo).

Esta gran cantidad de códigos era deseable en ese momento, ya que los controles de múltiples bytes requerirían la implementación de una máquina de estado en el terminal, lo cual era muy difícil con los terminales electrónicos y mecánicos contemporáneos. Desde entonces, sólo algunos de los controles originales han mantenido su uso: el rango de "espacios en blanco" de BS, TAB, LF, VT, FF y CR; el código BEL; y ESC (pero casi siempre como parte de un ESC, '[' representación CSI que inicia una secuencia de escape ANSI ). Otros no se utilizan o han adquirido significados diferentes, como que NUL es el terminador de cadena C.

Algunos protocolos de transmisión en serie, como ANPA-1312 , Kermit y XMODEM , hacen un uso extensivo de los caracteres de control SOH, STX, ETX, EOT, ACK, NAK y SYN con fines que se aproximan a sus definiciones originales.

Estos son los códigos de control ASCII estándar, originalmente definidos en ANSI X3.4 . Si se utiliza el mecanismo de extensión ISO / IEC 2022 , se designan como el juego de caracteres de control C0 activo con la secuencia de octetos 0x1B 0x21 0x40( ESC ! @). [1]