1024程序员节主题征文 | ASCII码简介与对照表

简介

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。

请注意,ASCII是American Standard Code for Information Interchange缩写,而不是ASC2,有很多人在这个地方产生误解。

产生

在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)、以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。

美国标准信息交换代码是由美国国家标准学会(American National Standard Institute,ANSI)制定的,标准的单字节字符编码方案,用于基于文本的数据。起始于50年代后期,在1967年定案。它最初是美国国家标准,供不同计算机在相互通信时用作共同遵守的西文字符编码标准,它已被国际标准化组织(International Organization for Standardization,ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母。

表述方式

ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数来表示所有的大写和小写字母,数字0 到9、标点符号, 以及在美式英语中使用的特殊控制字符。其中:

0 ~ 31及127(共33个)是控制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;ASCII值为8、9、10 和13分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响。

32 ~ 126(共95个)是字符(32是空格),其中48 ~ 57为0到9十个阿拉伯数字。

65 ~ 90为26个大写英文字母,97 ~ 122号为26个小写英文字母,其余为一些标点符号、运算符号等。

同时还要注意,在标准ASCII中,其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。

后128个称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或"高")ASCII。扩展ASCII 码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号。

标准对照表

Bin(二进制)
Dec(十进制)
Hex(16进制)
缩写/字符
解释
0000 0000
0
00
NUL(null)
空字符
0000 0001
1
01
SOH(start of headline)
标题开始
0000 0010
2
02
STX (start of text)
正文开始
0000 0011
3
03
ETX (end of text)
正文结束
0000 0100
4
04
EOT (end of transmission)
传输结束
0000 0101
5
05
ENQ (enquiry)
请求
0000 0110
6
06
ACK (acknowledge)
收到通知
0000 0111
7
07
BEL (bell)
响铃
0000 1000
8
08
BS (backspace)
退格
0000 1001
9
09
HT (horizontal tab)
水平制表符
0000 1010
10
0A
LF (NL line feed, new line)
换行键
0000 1011
11
0B
VT (vertical tab)
垂直制表符
0000 1100
12
0C
FF (NP form feed, new page)
换页键
0000 1101
13
0D
CR (carriage return)
回车键
0000 1110
14
0E
SO (shift out)
不用切换
0000 1111
15
0F
SI (shift in)
启用切换
0001 0000
16
10
DLE (data link escape)
数据链路转义
0001 0001
17
11
DC1 (device control 1)
设备控制1
0001 0010
18
12
DC2 (device control 2)
设备控制2
0001 0011
19
13
DC3 (device control 3)
设备控制3
0001 0100
20
14
DC4 (device control 4)
设备控制4
0001 0101
21
15
NAK (negative acknowledge)
拒绝接收
0001 0110
22
16
SYN (synchronous idle)
同步空闲
0001 0111
23
17
ETB (end of trans. block)
传输块结束
0001 1000
24
18
CAN (cancel)
取消
0001 1001
25
19
EM (end of medium)
介质中断
0001 1010
26
1A
SUB (substitute)
替补
0001 1011
27
1B
ESC (escape)
换码(溢出)
0001 1100
28
1C
FS (file separator)
文件分割符
0001 1101
29
1D
GS (group separator)
分组符
0001 1110
30
1E
RS (record separator)
记录分离符
0001 1111
31
1F
US (unit separator)
单元分隔符
0010 0000
32
20
(space)
空格
0010 0001
33
21
!
0010 0010
34
22
"
0010 0011
35
23
#
0010 0100
36
24
$
0010 0101
37
25
%
0010 0110
38
26
&
0010 0111
39
27
'
0010 1000
40
28
(
0010 1001
41
29
)
0010 1010
42
2A
*
0010 1011
43
2B
+
0010 1100
44
2C
,
0010 1101
45
2D
-
0010 1110
46
2E
.
0010 1111
47
2F
/
0011 0000
48
30
0
0011 0001
49
31
1
0011 0010
50
32
2
0011 0011
51
33
3
0011 0100
52
34
4
0011 0101
53
35
5
0011 0110
54
36
6
0011 0111
55
37
7
0011 1000
56
38
8
0011 1001
57
39
9
0011 1010
58
3A
:
0011 1011
59
3B
;
0011 1100
60
3C
<
0011 1101
61
3D
=
0011 1110
62
3E
>
0011 1111
63
3F
?
0100 0000
64
40
@
0100 0001
65
41
A
0100 0010
66
42
B
0100 0011
67
43
C
0100 0100
68
44
D
0100 0101
69
45
E
0100 0110
70
46
F
0100 0111
71
47
G
0100 1000
72
48
H
0100 1001
73
49
I
0100 1010
74
4A
J
0100 1011
75
4B
K
0100 1100
76
4C
L
0100 1101
77
4D
M
0100 1110
78
4E
N
0100 1111
79
4F
O
0101 0000
80
50
P
0101 0001
81
51
Q
0101 0010
82
52
R
0101 0011
83
53
S
0101 0100
84
54
T
0101 0101
85
55
U
0101 0110
86
56
V
0101 0111
87
57
W
0101 1000
88
58
X
0101 1001
89
59
Y
0101 1010
90
5A
Z
0101 1011
91
5B
[
0101 1100
92
5C
\
0101 1101
93
5D
]
0101 1110
94
5E
^
0101 1111
95
5F
_
0110 0000
96
60
`
0110 0001
97
61
a
0110 0010
98
62
b
0110 0011
99
63
c
0110 0100
100
64
d
0110 0101
101
65
e
0110 0110
102
66
f
0110 0111
103
67
g
0110 1000
104
68
h
0110 1001
105
69
i
0110 1010
106
6A
j
0110 1011
107
6B
k
0110 1100
108
6C
l
0110 1101
109
6D
m
0110 1110
110
6E
n
0110 1111
111
6F
o
0111 0000
112
70
p
0111 0001
113
71
q
0111 0010
114
72
r
0111 0011
115
73
s
0111 0100
116
74
t
0111 0101
117
75
u
0111 0110
118
76
v
0111 0111
119
77
w
0111 1000
120
78
x
0111 1001
121
79
y
0111 1010
122
7A
z
0111 1011
123
7B
{
0111 1100
124
7C
|
0111 1101
125
7D
}
0111 1110
126
7E
~
0111 1111
127
7F
DEL (delete)
删

了解更多知识和教程,请关注CSDN用户 @钜铠。如果喜欢这篇文章的话,请不要吝惜你的一个赞吧!谢谢!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YoungGeeker

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值