1分钟理解什么是字符集(Character Set)

[Q&A] 什么是字符集?

严格来说,计算机无法保存电影、音乐、图片、字符……计算机只能保存二进制码。因此电影、音乐、图片、字符都需要先转换为二进制码,然后才能保存。对于保存字符就简单多了,直接把所有需要保存的字符编号,当计算机要保存某个字符时,只要将该字符的编号转换为二进制码,然后保存起来即可。所谓字符集,就是给所有字符的编号组成总和。

ASCII

最早的字符集叫 American Standard Code for Information Interchange(美国信息交换标准代码),简称 ASCII,由 American National Standard Institute(美国国家标准协会)制定。

1・鼻祖,ascii,7位(bit) 范围128个字符

ASCII 字符集总共规定了 128 种字符规范,但是并没有涵盖西文字母之外的字符。
范围是:00000000 - 011111110x00 - 0x7F ,共128个字符

2・随之出现扩展ascii, 8位范围256

后来发现,如果需要按照表格方式打印这些字符的时候,缺少了“制表符”。于是又扩展了ASCII的定义,使用一个字节的全部8位(bit)来表示字符了,这就叫扩展ASCII码
范围:00000000 - 011111110x00 - 0xFF ,共256个字符

GB2312、GBK 、GB18030

3・中国最早出现gb-2312,支持中文

GB 2312 就是解决中文编码的字符集,由国家标准委员会发布。 同时考虑到中文语境中往往也需要使用西文字母,GB2312 也实现了对ASCII 的向下兼容,原理是西文字母使用和 ASCII 中相同的代码。
GB2312 涵盖了 6000 多个汉字。

4・随之出现gbk,扩展的gb-2312,包含复杂中文和繁体

GB2312 只涵盖了 6000 多个汉字,还有很多没有包含在其中,又进行扩展。扩展之后的编码方案被称为 GBK标准,GBK包括了GB2312 的所有内容,同时又增加了近20000个新的汉字(包括繁体字)和符号

5・进一步扩展GB18030

后来少数民族也要用电脑了,于是我们再扩展,又加了几千个新的少数民族文字,GBK扩成了 GB18030。
从此之后,中华民族的文化就可以在计算机时代中传承了。中国的程序员们看到这一系列汉字编码的标准是好的,于是通称他们叫做 “DBCS“(Double Byte Charecter Set 双字节字符集

Unicode(Universal Multiple-ctet Coded Character Set)

6・unicode标准字符集统一全球

Unicode之前,世界各个国家都有自己的编码标准,导致国家与国家之间的编码转换很有问题。为了把全世界人民所有的所有的文字符号都统一进行编码,于是一个叫 ISO (国际标谁化组织)的国际组织制定了”Universal Multiple-ctet Coded Character Set”,简称 UCS, 俗称 “unicode“。这样全世界任何一个地区的软件,可以不用修改地就能在另一个地区运行了。虽然我用 IE浏览日本网站,显示出我不认识的日文文字,但至少不会是乱码了。

Unicode的范围:000000000000000 - 11111111111111110x0000 - 0xFFFF ,共60000多个字符,其中光汉字就占用了40000多个。

Unicode规定2个字节表示一个字符。 通常会用U+十六进制数字 代表 Unicode字符代码,eg:U+77E5

对于ASCII里的那些英文“半角”字符,其原编码不变,只是将其长度由原来的8位扩展为16位,高位补0。而其他文化和语言的字符则全部重新统一编码。 这种大气的方案在保存英文文本时会多浪费一倍的空间。

[Q&A] 什么字符编码?

字符统一成Unicode编码,乱码问题从此消失了。 但是Unicode只是一个字符集。字符集只是给所有的字符一个唯一编号,但是却没有规定如何存储。 Unicode最常用的是用两个字节表示一个字符,如果你写的文本基本上全部是英文的话,用Unicode编码比ASCII编码需要多一倍的存储空间,在存储和传输上就十分不划算。所以又引入了 字符编码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值