彻底搞懂字符集编码:ASCII,Unicode 和 UTF-8

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了彻底搞懂字符集编码:ASCII,Unicode 和 UTF-8相关的知识,希望对你有一定的参考价值。

一、ASCII 码

我们知道,计算机内部,所有信息最终都是一个二进制值。每一个二进制位(bit)有​​0​​​和​​1​​​两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从​​00000000​​​到​​11111111​​。

上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定。这被称为 ASCII 码,一直沿用至今。

ASCII 码一共规定了128个字符的编码,比如空格​​SPACE​​​是32(二进制​​00100000​​​),大写的字母​​A​​​是65(二进制​​01000001​​​)。这128个符号(包括32个不能打印出来的控制符号),只占用了一个字节的后面7位,最前面的一位统一规定为​​0​​。

ASCII控制字符

二进制

十进制

十六进制

缩写

可以显示的表示法

名称/意义

0000 0000

0

00

NUL


空字符(Null)

0000 0001

1

01

SOH


标题开始

0000 0010

2

02

STX


本文开始

0000 0011

3

03

ETX


本文结束

0000 0100

4

04

EOT


传输结束

0000 0101

5

05

ENQ


请求

0000 0110

6

06

ACK


确认回应

0000 0111

7

07

BEL


响铃

0000 1000

8

08

BS


退格

0000 1001

9

09

HT


水平定位符号

0000 1010

10

0A

LF


换行键

0000 1011

11

0B

VT


垂直定位符号

0000 1100

12

0C

FF


换页键

0000 1101

13

0D

CR


归位键

0000 1110

14

0E

SO


取消变换(Shift out)

0000 1111

15

0F

SI


启用变换(Shift in)

0001 0000

16

10

DLE


跳出数据通讯

0001 0001

17

11

DC1


设备控制一(XON 启用软件速度控制)

0001 0010

18

12

DC2


设备控制二

0001 0011

19

13

DC3


设备控制三(XOFF 停用软件速度控制)

0001 0100

20

14

DC4


设备控制四

0001 0101

21

15

NAK


确认失败回应

0001 0110

22

16

SYN


同步用暂停

0001 0111

23

17

ETB


区块传输结束

0001 1000

24

18

CAN


取消

0001 1001

25

19

EM


连接介质中断

0001 1010

26

1A

SUB


替换

0001 1011

27

1B

ESC


跳出

0001 1100

28

1C

FS


文件分割符

0001 1101

29

1D

GS


组群分隔符

0001 1110

30

1E

RS


记录分隔符

0001 1111

31

1F

US


单元分隔符

0111 1111

127

7F

DEL

以上是关于彻底搞懂字符集编码:ASCII,Unicode 和 UTF-8的主要内容,如果未能解决你的问题,请参考以下文章

一次性搞懂字符集,编码,Unicode,Utf-8/16,BOM...

彻底搞懂编码 GBK 和 UTF8

彻底搞懂编码 GBK 和 UTF8

Unicode,UTF-8和GBK编码方式,你真的搞懂了吗?

彻底搞懂Python的字符编码

字符编码彻底理解字符编码(转)

(c)2006-2024 SYSTEM All Rights Reserved IT常识