ASCII定義了32個控制字符,再加上一個Delete字符。
在當時(20世紀六七十年代)這麽多控制字符都是需要的,因為多字節表示的控制序列要求終端機實現一個狀態機,這在當時的電傳或機械終端非常困難。但現在僅有少數控制字符還被使用(如空白符範疇的BS, TAB, LF, VT, FF, CR),其它一些字符無用,還有一些改變了用途(如NUL表示C語言字符串的終止)。
一些傳輸協議如ANPA-1312對控制字符SOH, STX, ETX 與 EOT做了擴展使用。其它著名的如BEL, ACK, NAK 與 SYN現在過時了。
現代終端有很多控制符可通過多字節的ANSI轉義序列(開頭為ESC 與 '[')表示。
ASCII控制字符的標準最初定義為ANSI X3.4。對於ISO/IEC 2022擴展機制,稱為主動的C0控制字符集,採用八進制表示0x1B 0x21 0x40
(ESC ! @
).
更多資訊 Seq, Dec ...
Seq
|
Dec
|
Hex
|
縮寫
|
符號
|
名字
|
C
|
描述
|
^@ |
00 |
00 |
NUL |
␀ |
Null |
\0
|
最初用於在穿孔紙帶上留下空白位置。後用於需要終端花時間處理的編碼(如打印終端處理回車換行)之後的位置。現在用於C語言字符串的終止字節.
|
^A |
01 |
01 |
SOH |
␁ |
Start of Heading |
|
消息頭部第一個字符。在Hadoop,用作域分隔符。
|
^B |
02 |
02 |
STX |
␂ |
Start of Text |
|
消息正文第一個字符,也標誌着消息頭部的最後一個字符。
|
^C |
03 |
03 |
ETX |
␃ |
End of Text |
|
消息正文結束。常用作"break"字符(Ctrl-C)以打斷或者終止程序或進程。
|
^D |
04 |
04 |
EOT |
␄ |
End of Transmission |
|
^E |
05 |
05 |
ENQ |
␅ |
Enquiry |
|
信號用於觸發對方一個響應,查看對方是否仍然在線。
|
^F |
06 |
06 |
ACK |
␆ |
Acknowledge |
|
對ENQ的響應,或表示成功收到消息。
|
^G |
07 |
07 |
BEL[a] |
␇ |
Bell, Alert |
\a
|
最初用作在終端上響鈴。後用於在沒有物理鈴聲的終端上蜂鳴。也可用於在屏幕上inverse video (a visual bell).
|
^H |
08 |
08 |
BS |
␈ |
Backspace |
\b
|
向左移動游標一個位置。對於輸入,這會刪除游標左側的一個字符。對於輸出,由於早期計算機技術對於已打印字符不能擦除,該控制字符有時用於疊加打印輸出附加符號字符。例如, à可用3字符序列a BS ` 生成。現在這種方法已經過時了,通常不被支持。
|
^I |
09 |
09 |
HT |
␉ |
Character Tabulation, Horizontal Tabulation |
\t
|
定位到下一個制表位。
|
^J |
10 |
0A |
LF |
␊ |
Line Feed |
\n
|
在打印機、終端上,移動光標到下一行但不改變所在的列的位置。在Unix上,用於表示行結束。在DOS、Windows以及很多網絡協議表示跟在CR之後作為行結束符。
|
^K |
11 |
0B |
VT |
␋ |
Line Tabulation, Vertical Tabulation |
\v
|
定位到下一行的制表位。
|
^L |
12 |
0C |
FF |
␌ |
Form Feed |
\f
|
打印機加載下一頁。許多程式語言視作空白符或用作代碼的邏輯分隔符。某些終端模擬器上清屏。在某些常見文本文件用作分頁符,如IETF出版的RFCs。
|
^M |
13 |
0D |
CR |
␍ |
Carriage Return |
\r
|
最初,用於把光標移動到所在行的第0列。在classic Mac OS (早於Mac OS X)以及早期的電腦Apple II 與 Commodore 64表示行結束。DOS, Windows, 與很多網絡協議用於在LF之前共同表示行結束。回車鍵發送這一字符,但很多終端會把它轉化為行結束符。
|
^N |
14 |
0E |
SO |
␎ |
Shift Out |
|
切換到可選字符集。
|
^O |
15 |
0F |
SI |
␏ |
Shift In |
|
Shift Out之後,切換回正常字符集。
|
^P |
16 |
10 |
DLE |
␐ |
Data Link Escape |
|
使得隨後的八進制數被解釋為原生數據而不是控制字符或可打印字符。返回到正常使用則依賴於實現。
|
^Q |
17 |
11 |
DC1 |
␑ |
Device Control One (XON) |
|
這4個控制字符保留用於設備控制,其解釋依賴於所連接的設備。 DC1與DC2主要用於表示設備被激活;DC3 與 DC4主要表示暫停或關閉設備。實際上DC1與DC3 (稱作XON 與 XOFF) 成為software flow 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 |
|
由一台設備發給與它相連的另一台設備,作為負面響應結果。在點對點系統中,表示前一個接收數據塊有錯,接收方已經準備接受重傳數據塊。在多點系統中,NAK表示沒有準備好回復輪詢。
|
^V |
22 |
16 |
SYN |
␖ |
Synchronous Idle |
|
用於同步傳輸系統,表示在數據終端設備間同步校準成功,沒有數據需要傳輸。
|
^W |
23 |
17 |
ETB |
␗ |
End of Transmission Block |
|
指示數據傳輸塊的結尾。
|
^X |
24 |
18 |
CAN |
␘ |
Cancel |
|
指示之前的數據有錯應該忽視。
|
^Y |
25 |
19 |
EM |
␙ |
End of medium |
|
指示紙或磁帶的可用部分的結束之處。
|
^Z |
26 |
1A |
SUB |
␚ |
Substitute |
|
最初用作傳輸控制字符指示收到混亂或者無效的字符。也被用作當不使用表示有錯的帶內信令時,特別是採用錯誤檢測與糾正的魯棒方法,而出錯極為罕見情形。DOS, Windows、CP/M的派生系統,用作指示文件結束,包括終端打字輸入或存在磁盤上的文本文件。
|
^[ |
27 |
1B |
ESC |
␛ |
Escape |
\e[b]
|
鍵盤上的Esc將發送此字符。用於軟件的人機界面退出屏幕、菜單或模式,或設備控制協議(如打印機或終端)通知隨後是一個特殊命令序列而不是正常文本。基於ISO/IEC 2022的系統,即使使用另一個C0控制字符集,這個八進制數總是表示轉義字符。
|
^\ |
28 |
1C |
FS |
␜ |
File Separator |
|
分隔數據結構的域的分隔符。層次由高到低。
|
^] |
29 |
1D |
GS |
␝ |
Group Separator |
|
^^ |
30 |
1E |
RS |
␞ |
Record Separator |
|
^_ |
31 |
1F |
US |
␟ |
Unit Separator |
|
雖然不在C0控制字符集範圍內,但ISO/IEC 2022定義了下述兩個字符,具有控制符的特點。
|
|
32 |
20 |
SP |
␠ |
Space |
|
空格是一個圖形字符。
|
^? |
127 |
7F |
DEL |
␡ |
Delete |
|
最初用於穿孔紙帶上刪除一個字符。因為任何位置的字符都可以被全部穿孔(全1)。VT100兼容終端,按鍵⌫產生這個字符,常稱為backspace,但不對應於PC鍵盤的delete key。
|
關閉