转自:http://en.wikipedia.org/wiki/C0_and_C1_control_codes
C0 (ASCII and derivatives)
These are the standard ASCII control codes. If using theISO/IEC 2022extension mechanism, they are designated as the active C0 control character set with the octet sequence0x1B 0x21 0x40
(ESC!@
).
Seq | Dec | Hex | Acro | Symb | Name | C | Description | ||
---|---|---|---|---|---|---|---|---|---|
^@ | 00 | 00 | NUL | ␀ | Null | \0 | Originally used to allow gaps to be left on paper tape for edits. Later used for padding after a code that might take a terminal some time to process (e.g. a carriage return or line feed on a printing terminal). Now often used as a string terminator, especially in theC programming language. | ||
^A | 01 | 01 | SOH | ␁ | Start of Heading | First character of a message header. | |||
^B | 02 | 02 | STX | ␂ | Start of text | First character of message text, and may be used to terminate the message heading. | |||
^C | 03 | 03 | ETX | ␃ | End of Text | Often used as a "break" character (Ctrl-C) to interrupt or terminate a program or process. | |||
^D | 04 | 04 | EOT | ␄ | End of Transmission | Used onUnixto signal end-of-file condition on, or to logout from a terminal. | |||
^E | 05 | 05 | ENQ | ␅ | Enquiry | Signal intended to trigger a response at the receiving end, to see if it is still present. | |||
^F | 06 | 06 | ACK | ␆ | Acknowledge | Response to an ENQ, or an indication of successful receipt of a message. | |||
^G | 07 | 07 | BEL | ␇ | Bell | \a | Originally used to sound abellon the terminal. Later used for a beep on systems that didn't have a physical bell. May also quickly turn on and offinverse video(avisual bell). | ||
^H | 08 | 08 | BS | ␈ | Backspace | \b | Move the cursor one position leftwards. On input, this may delete the character to the left of the cursor. On output, where in early computer technology a character once printed could not be erased, the backspace was sometimes used to generate accented characters in ASCII. For example,àcould be produced using the three character sequencea BS ` (0x61 0x08 0x60 ). This usage is now deprecated and generally not supported. To provide disambiguation between the two potential uses of backspace, thecancel charactercontrol code was made part of the standard C1 control set. | ||
^I | 09 | 09 | HT | ␉ | Character Tabulation,Horizontal Tabulation | \t | Position to the next charactertab stop. | ||
^J | 10 | 0A | LF | ␊ | Line Feed | \n | Ontypewriters,printers, and some terminal emulators, moves the cursor down one row without affecting its column position. On Unix, used to markend-of-line. InMS-DOS,Windows, and various network standards, LF is used following CR as part of the end-of-line mark. | ||
^K | 11 | 0B | VT | ␋ | Line Tabulation,Vertical Tabulation | \v | Position the form at the next line tab stop. | ||
^L | 12 | 0C | FF | ␌ | Form Feed | \f | On printers, load the next page. Treated as whitespace in many programming languages, and may be used to separate logical divisions in code. In some terminal emulators, it clears the screen. | ||
^M | 13 | 0D | CR | ␍ | Carriage Return | \r | Originally used to move the cursor to column zero while staying on the same line. OnMac OS(pre-Mac OS X), as well as in earlier systems such as theApple IIandCommodore 64, used to markend-of-line. InMS-DOS,Windows, and various network standards, it is used preceding LF as part of the end-of-line mark. The Enter orReturn keyon a keyboard will send this character, but it may be converted to a different end-of-line sequence by a terminal program. | ||
^N | 14 | 0E | SO | ␎ | Shift Out | Switch to an alternate character set. | |||
^O | 15 | 0F | SI | ␏ | Shift In | Return to regular character set after Shift Out. | |||
^P | 16 | 10 | DLE | ␐ | Data Link Escape | Cause the following octets to be interpreted as raw data, not as control codes or graphic characters. Returning to normal usage would be implementation dependent. | |||
^Q | 17 | 11 | DC1 | ␑ | Device ControlOne (XON) | These four control codes are reserved for device control, with the interpretation dependent upon the device they were connected. DC1 and DC2 were intended primarily to indicate activating a device while DC3 and DC4 were intended primarily to indicate pausing or turning off a device. In actual practice DC1 and DC3 (known also as XON and XOFF respectively in this usage) quickly became the de facto standard for softwareflow control. | |||
^R | 18 | 12 | DC2 | ␒ | Device Control Two | ||||
^S | 19 | 13 | DC3 | ␓ | Device Control Three (XOFF) | ||||
^T | 20 | 14 | DC4 | ␔ | Device Control Four | ||||
^U | 21 | 15 | NAK | ␕ | Negative Acknowledge | Sent by a station as a negative response to the station with which the connection has been set up. In binary synchronous communication protocol, the NAK is used to indicate that an error was detected in the previously received block and that the receiver is ready to accept retransmission of that block. In multipoint systems, the NAK is used as the not-ready reply to a poll. | |||
^V | 22 | 16 | SYN | ␖ | Synchronous Idle | Used in synchronous transmission systems to provide a signal from which synchronous correction may be achieved between data terminal equipment, particularly when no other character is being transmitted. | |||
^W | 23 | 17 | ETB | ␗ | End of Transmission Block | Indicates the end of a transmission block of data when data are divided into such blocks for transmission purposes. | |||
^X | 24 | 18 | CAN | ␘ | Cancel | Indicates that the data preceding it are in error or are to be disregarded. | |||
^Y | 25 | 19 | EM | ␙ | End of medium | Intended as means of indicating on paper or magnetic tapes that the end of the usable portion of the tape had been reached. | |||
^Z | 26 | 1A | SUB | ␚ | Substitute | Originally intended for use as a transmission control character to indicate that garbled or invalid characters had been received. It has often been put to use for other purposes when thein-band signalingof errors it provides is unneeded, especially where robust methods oferror detection and correctionare used, or where errors are expected to be rare enough to make using the character for other purposes advisable. | |||
^[ | 27 | 1B | ESC | ␛ | Escape | TheEsc keyon the keyboard will cause this character to be sent on most systems. It can be used in software user interfaces to exit from a screen, menu, or mode, or in device-control protocols (e.g., printers and terminals) to signal that what follows is a special command sequence rather than normal text. In systems based onISO/IEC 2022, even if another set of C0 control codes are used, this octet is required to always represent the escape character. | |||
^\ | 28 | 1C | FS | ␜ | File Separator | Can be used as delimiters to mark fields of data structures. If used for hierarchical levels, US is the lowest level (dividing plain-text data items), while RS, GS, and FS are of increasing level to divide groups made up of items of the level beneath it. | |||
^] | 29 | 1D | GS | ␝ | Group separator | ||||
^^ | 30 | 1E | RS | ␞ | Record Separator | ||||
^_ | 31 | 1F | US | ␟ | Unit separator | ||||
While not technically part of the C0 control character range, the following two characters are defined inISO/IEC 2022as always being available regardless of which sets of control characters and graphics characters have been registered. They can be thought of as having some characteristics of control characters. | |||||||||
32 | 20 | SP | ␠ | Space | Space is a graphic character. It has a visual representation consisting of the absence of a graphic symbol. It causes the active position to be advanced by one character position. In some applications, Space can be considered a lowest-level "word separator" to be used with the adjacent separator characters. | ||||
^? | 127 | 7F | DEL | ␡ | Delete | Not technically part of the C0 control character range, this was originally used to mark deleted characters on paper tape, since any character could be changed to all ones by punching holes everywhere. OnVT100compatible terminals, this is the character generated by the key labelled⌫, usually called backspace on modern machines, and does not correspond to the PCdelete key. |
C1 set
These are the most common extended control codes. If using theISO/IEC 2022extension mechanism, they are designated as the active C1 control character set with the sequence0x1B 0x22 0x43
(ESC " C
). Individual control functions can be accessed with the 7-bit equivalents0x1B 0x40
through0x1B 0x5F
(ESC @
throughESC _
).
Esc+ | Dec | Hex | Acro | Name | Description |
---|---|---|---|---|---|
@ | 128 | 80 | PAD | Padding Character | Listed as XXX in Unicode. Not part ofISO/IEC 6429(ECMA-48). |
A | 129 | 81 | HOP | High Octet Preset | |
B | 130 | 82 | BPH | Break Permitted Here | Follows a graphic character where a line break is permitted. Roughly equivalent to asoft hyphenexcept that the means for indicating a line break is not necessarily a hyphen. Not part of the first edition of ISO/IEC 6429.[1] |
C | 131 | 83 | NBH | No Break Here | Follows the graphic character that is not to be broken. Not part of the first edition of ISO/IEC 6429.[1] |
D | 132 | 84 | IND | Index | Move the active position one line down, to eliminate ambiguity about the meaning of LF. Deprecated in 1988 and withdrawn in 1992 from ISO/IEC 6429 (1986 and 1991 respectively for ECMA-48). |
E | 133 | 85 | NEL | Next Line | Equivalent to CR+LF. Used to mark end-of-line on some IBM mainframes. |
F | 134 | 86 | SSA | Start of Selected Area | Used byblock-oriented terminals. |
G | 135 | 87 | ESA | End of Selected Area | |
H | 136 | 88 | HTS | Character Tabulation Set Horizontal Tabulation Set | Causes a character tabulation stop to be set at the active position. |
I | 137 | 89 | HTJ | Character Tabulation With Justification Horizontal Tabulation With Justification | Similar to Character Tabulation, except that instead of spaces or lines being placed after the preceding characters until the next tab stop is reached, the spaces or lines are placed preceding the active field so that preceding graphic character is placed just before the next tab stop. |
J | 138 | 8A | VTS | Line Tabulation Set Vertical Tabulation Set | Causes a line tabulation stop to be set at the active position. |
K | 139 | 8B | PLD | Partial Line Forward Partial Line Down | Used to produce subscripts and superscripts inISO/IEC 6429, e.g., in a printer. Subscripts use PLDtextPLU while superscripts usePLUtextPLD. . |
L | 140 | 8C | PLU | Partial Line Backward Partial Line Up | |
M | 141 | 8D | RI | Reverse Line Feed Reverse Index | |
N | 142 | 8E | SS2 | Single-Shift 2 | Next character invokes a graphic character from the G2 or G3 graphic sets respectively. In systems that conform toISO/IEC 4873(ECMA-43), even if a C1 set other than the default is used, these two octets may only be used for this purpose. |
O | 143 | 8F | SS3 | Single-Shift 3 | |
P | 144 | 90 | DCS | Device Control String | Followed by a string of printable characters (0x20 through 0x7E) and format effectors (0x08 through 0x0D), terminated by ST (0x9C). |
Q | 145 | 91 | PU1 | Private Use 1 | Reserved for a function without standardized meaning for private use as required, subject to the prior agreement of the sender and the recipient of the data. |
R | 146 | 92 | PU2 | Private Use 2 | |
S | 147 | 93 | STS | Set Transmit State | |
T | 148 | 94 | CCH | Cancel character | Destructive backspace, intended to eliminate ambiguity about meaning of BS. |
U | 149 | 95 | MW | Message Waiting | |
V | 150 | 96 | SPA | Start of Protected Area | Used byblock-oriented terminals. |
W | 151 | 97 | EPA | End of Protected Area | |
X | 152 | 98 | SOS | Start of String | Followed by a control string terminated by ST (0x9C) that may contain any character except SOS or ST. Not part of the first edition of ISO/IEC 6429.[1] |
Y | 153 | 99 | SGCI | Single Graphic Character Introducer | Listed as XXX in Unicode. Not part of ISO/IEC 6429. |
Z | 154 | 9A | SCI | Single Character Introducer | To be followed by a single printable character (0x20 through 0x7E) or format effector (0x08 through 0x0D). The intent was to provide a means by which a control function or a graphic character that would be available regardless of which graphic or control sets were in use could be defined. Definitions of what the following byte would invoke was never implemented in an international standard. Not part of the first edition of ISO/IEC 6429.[1] |
[ | 155 | 9B | CSI | Control Sequence Introducer | Used to introduce control sequences that take parameters. |
\ | 156 | 9C | ST | String Terminator | |
] | 157 | 9D | OSC | Operating System Command | Followed by a string of printable characters (0x20 through 0x7E) and format effectors (0x08 through 0x0D), terminated by ST (0x9C). These three control codes were intended for use to allow in-band signaling of protocol information, but are rarely used for that purpose. |
^ | 158 | 9E | PM | Privacy Message | |
_ | 159 | 9F | APC | Application Program Command |