字符编码(二)

转字刨根究底字符编码

Unicode

Unicode字符集的目标是涵盖目前人类使用的所有字符,并为每个字符分配唯一
的字符编号(码点值),一一对应于编号空间(码点空间)的里的码点。

Unicode字符集的字符编码方式一开始规定用两个字节(16位)来统一表示所有字符,对于ASCII字符,保持其编码不变。只是在UTF-16字符编码方式中将其长度由原来的8位扩展为16为。

由于ASCII字符只需要用到UTF-16中的后7位,所以前9位都是0。

Unicode字符集不同于ASCII这样不能再增加字符的封闭字符集,而是一个开放的字符集,在不断的发展(例如emoji不断的被添加到字符集中),理论上支持的字符数量时没有上限的,未来还可以再扩展。

在表示Unicode编号的十六进制数的前面加上“U+”
U+0041表示大写英文字母A
U+4E25表示汉字“严”

Unicode字符集将所有字符按照使用频率分为17个平面,每个平面上的编号空间有2^16=65536个码点。

BMP

Basic Multilingual Plane基本多语言平面,基本涵盖了当今世界正在使用中的常用字符。

BMP以外其他的增补平面,要么用来表示一些非常特殊的字符(比如不常用的象形文字、远古时期的文字等),且多半只有专家在历史和科学领域才会用到它们,要么被留作扩展使用。目前Unicode字符集中尚有大量编号空间尚未被使用。

Private Use Zone

专用区(OxE000~OxF8FF)(57344~63743),工6400个码点,被保留为专用,因而永远不会被分配给任何字符。

Surrogate Zone

代理区(OxD800~OxDFFF)(55296~57343)共2048个码点,目的使用基本平面BMP中的两个码点“代理”表示BMP以外的其他增补平面的字符。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值