Unix 之书
☰ 目录

附录 D...

ASCII 码 (The ASCII Code)

在 20 世纪 90 年代之前,Unix(以及大多数计算机 系统)使用的字符编码是 ASCII 码(ASCII CODE),常直接称为 ASCII。这个名字来自 "American Standard Code for Information Interchange"(美国信息交换标准代码)的首字母 缩略词。

ASCII 码创建于 1967 年。它为每个字符规定了一个 7 位模式,总共 128 个。这些位模式从 0000000 (十进制 0)到 1111111(十进制 127)。出于这个 原因,128 个 ASCII 字符的编号从 0 到 127。

构成 ASCII 码的 128 个字符包括 33 个"控制字符" 和 95 个"可打印字符"。关于控制字符的讨论,请见 第 7 章。可打印字符如下所示,它们是字母表中的 52 个字母(26 个大写、26 个小写)、10 个数字、 32 个标点符号,以及空格字符(在下面的列表中排在 最前面):

 !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ 'abcdefghijklmnopqrstuvwxyz{|}~

为了方便起见,大多数 Unix 系统都有一份显示 ASCII 码的参考页面,让你随时都能快速查阅。 遗憾的是,ASCII 码参考页并没有统一标准,所以 显示它的方式取决于你使用的是哪个系统。具体 细节请参见图 19-1 或图 20-5。

作为参考,下面的表格列出了 ASCII 码的 128 个 字符,以及它们对应的十进制(基数 10)、十六进制 (基数 16)、八进制(基数 8)和二进制(基数 2) 数值。关于二进制、八进制和十六进制计数法的 讨论,请见第 21 章。

字符 十进制 十六进制 八进制 二进制  
   0000000000 0000 (空值)
Ctrl-A 1010010000 0001 
Ctrl-B 2020020000 0010 
Ctrl-C 3030030000 0011 
Ctrl-D 4040040000 0100 
Ctrl-E 5050050000 0101 
Ctrl-F 6060060000 0110 
Ctrl-G 7070070000 0111 (蜂鸣)
Ctrl-H 8080100000 1000  退格
Ctrl-I 9090110000 1001  制表符
Ctrl-J 100A0120000 1010 
Ctrl-K 110B0130000 1011 
Ctrl-L 120C0140000 1100 
Ctrl-M 130D0150000 1101  回车
Ctrl-N 140E0160000 1110 
Ctrl-O 150F0170000 1111 
Ctrl-P 16100200001 0000 
Ctrl-Q 17110210001 0001 
Ctrl-R 18120220001 0010 
Ctrl-S 19130230001 0011 
Ctrl-T 10140240001 0100 
Ctrl-U 21150250001 0101 
Ctrl-V 22160260001 0110 
Ctrl-W 23170270001 0111 
Ctrl-X 24180200001 1000 
Ctrl-Y 25190210001 1001 
Ctrl-Z 261A0220001 1010 
Ctrl-[ 271B0230001 1011  退出
Ctrl-\ 281C0240001 1100 
Ctrl-] 291D0250001 1101 
Ctrl-^ 301E0260001 1110 
Ctrl-_ 311F0270001 1111 
字符 十进制 十六进制 八进制 二进制  
(space) 32200400010 0000  空格
! 33210410010 0001 (感叹号)
" 34220420010 0010 (双引号)
# 35230430010 0011 (号码符)
$ 36240440010 0100 (美元符号)
% 37250450010 0101 (百分号)
&38260460010 0110 (和号)
' 39270470010 0111 (单引号)
( 40280500010 1000 (左圆括号)
) 41290510010 1001 (右圆括号)
* 422A0520010 1010 (星号)
+ 432B0530010 1011 (加号)
, 442C0540010 1100 (逗号)
- 452D0550010 1101 (减号/连字符)
. 462E0560010 1110 (句点)
/ 472F0570010 1111 (斜杠)
0 48300600011 0000 
1 49310610011 0001 
2 50320620011 0010 
3 51330630011 0011 
4 52340640011 0100 
5 53350650011 0101 
6 54360660011 0110 
7 55370670011 0111 
8 56380700011 1000 
9 57390710011 1001 
: 583A0720011 1010(冒号)
; 593B0730011 1011(分号)
< 603C0740011 1100(小于号)
= 613D0750011 1101(等号)
> 623E0760011 1110(大于号)
? 633F0770011 1111(问号)
字符 十进制 十六进制 八进制 二进制  
@64401000100 0000 (@ 符号)
A65411010100 0001 
B66421020100 0010 
C67431030100 0011 
D68441040100 0100 
E69451050100 0101 
F70461060100 0110 
G71471070100 0111 
H72481100100 1000 
I73491110100 1001 
J744A1120100 1010 
K754B1130100 1011 
L764C1140100 1100 
M774D1150100 1101 
N784E1160100 1110 
O794F1170100 1111 
P80501200101 0000 
Q81511210101 0001 
R82521220101 0010 
S83531230101 0011 
T84541240101 0100 
U85551250101 0101 
V86561260101 0110 
W87571270101 0111 
X88581300101 1000 
Y89591310101 1001 
Z905A1320101 1010 (左方括号)
[915B1330101 1011 (反斜杠)
\925C1340101 1100 (右方括号)
]935D1350101 1101 (脱字符)
^945E1360101 1110 (下划线)
_955F1370101 1111 
字符 十进制 十六进制 八进制 二进制  
` 96601400110 0000 (反引号)
a 97611410110 0001 
b 98621420110 0010 
c 99631430110 0011 
d 100641440110 0100 
e 101651450110 0101 
f 102661460110 0110 
g 103671470110 0111 
h 104681500110 1000 
i 105691510110 1001 
j 1066A1520110 1010 
k 1076B1530110 1011 
l 1086C1540110 1100 
m 1096D1550110 1101 
n 1106E1560110 1110 
o 1116F1570110 1111 
p 112701600111 0000 
q 113711610111 0001 
r 114721620111 0010 
s 115731630111 0011 
t 116741640111 0100 
u 117751650111 0101 
v 118761660111 0110 
w 119771670111 0111 
x 120781700111 1000 
y 121791710111 1001 
z 1227A1720111 1010 
{ 1237B1730111 1011 (左花括号)
| 1247C1740111 1100 (竖线)
} 1257D1750111 1101 (右花括号)
~ 1267E1760111 1110 (波浪号)
1277F1770111 1111  删除