字符编码

字符

字符分为可见字符控制字符

1、可见字符

英文字母,数字,标点符号

2、控制字符(不可见字符)

如:回车、换行

字符集

码位代表字符
0空字符
1标题开始
2正文开始
31单元分割符
65A
90Z
127删除

码位就是一个字符编号,这样的一张表就是字符集。可见字符一共95个,控制字符一共33个。

ASCAII码表

码位代表字符ASCAII码
0空字符00000000
1标题开始00000001
2正文开始00000002
31单元分割符00011111
6501000001
90Z01111010
127删除01111111

ASCAII码 就是每个字符编号对应的二进制

一些欧洲国家使用计算机的时候,原来的128个字符无法满足需求,就在此基础上进行扩展

扩展ASCAII码表

从编号128后开始往后排,到编号255一共扩展了128个字符,对应的表就是扩展ASCAII码表

往后,中国开始使用计算机的时候,常用的汉字就有几千个,256个字符无法满足需求,需要对字符集进行扩展。

采用两个字节来存储

GB2312字符集

首先需要设计字符集

使用分区管理,一共划分了94个区,一个区有94个字符。总共包含了8836个字符

01-09区收录除汉字外的682个字符。
10-15区为空白区,没有使用。
16-55区收录3755个一级汉字,按拼音排序。
56-87区收录3008个二级汉字,按部首/笔画排序。
88-94区为空白区,没有使用。

这个字符集就叫做GB2312字符集

举例:比如03区y字符的编号是多少呢?

答 : 0389

03 代表03区
89代表在第8行第9列
在这里插入图片描述
我们只给字符进行了编号,并没有规定字符在计算机中如何进行存储。

如:汉字 侃的编号是5709

在这里插入图片描述
为什么要与0XA0相加呢?这样可以让每个字符的高8位和低8位都大于127,可以和ASCAII区分开来。

GB2312字符集有6736个汉字

GBK字符集

GBK字符集是对GB2312字符集 的一个扩展

不在规定低8位需要大于127,这样扩充接近2万个汉字和符号

这样的编码就称作GBK编码

GB18030字符集

后来又新增了少数民族的字符,对应的编码就是GB18030编码

世界上有很多国家,如果每个国家都有自己对应的一套编码,国家与国家之间的信息交流就会非常混乱。

后来,国际化标准组织(International Organization for Standardization)提出了Unicode标准,来统一规范字符编码

Unicode标准包括了世界上所有字符,以及对应的编码。

UCS-2字符集

ASCAII字符集一样给所有字符编号,然后将编号直接转为二进制

一共可以表示65535个字符(2个字节)

UCS-4字符集

65535个字符还是无法满足世界上所有字符,

采用4个字节来存储字符,一共可以代表2^32个字符,也就是42亿个字符

这样就可以包括世界上所有的字符了。

但是,UCS-4字符集采用了4个字节来存储一个字符,会造成空间的浪费。比如原先ASCAII字符集存储字符a只需要一个字节,采用UCS-4编码却需要4个字节

这样的编码并没有被各国很好地接受。

UTF-8编码

基于UCS-4字符集,对字符进行编码

UTF-8编码规则

将UCS-4字符集划分为4个区间
在这里插入图片描述
举例:

字在UCS-4字符集对应的编号是0X0000 738B

对应的二进制数是

0000 0000 0000 0000 0111 0011 1000 1011

对应划分的区间为
在这里插入图片描述

最终的二进制编码为

1110 0111 1000 1110 1000 1011

转化为16进制,结果是

0Xe7 0X8e 0X8b

图解如下:
在这里插入图片描述
视频地址:

https://www.bilibili.com/video/BV1gZ4y1x7p7?from=search&seid=3675790843208692425

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值