TouchGFX系列 番外篇 Unicode编码

本文介绍了Unicode编码,一种为兼容全球字符而设计的编码方式。它解决了不同国家和地区的字符编码不兼容问题。文中详细讲解了Unicode的发展,包括GB2312、GBK、GB18030等中文编码,以及Unicode的编码范围。此外,还提到了Unicode与UTF-8的关系以及Unicode的各个编码平面。
摘要由CSDN通过智能技术生成



前言

TouchGFX为了便于兼容所有的字符,采用的是unicode编码,本文将简要介绍这种编码方式

一、什么是Unicode

计算机不能理解人类用于书写的文本,只认识0101的二进制语言,所以人们发明了一种二进制与对应文本对应的规则,这就是字符编码。

最开始计算机只在美国用,老美发明了Ascii编码规则,用8位数据进行表示,把0h-1Fh用来放控制码,把20h-7Fh放各种字符。

之后计算机开始推广到其他国家,很多国家都不是使用的英文,于是他们就把Ascii的80h-FFh这一段拿来放入框线、音标和其它欧洲非英语系的字母,这被称为Ascii扩展字符集

等到计算机推广到中国的时候,却发现,已经没有空位来放字符了。而且中国光常用汉字就有6000多个,于是抛弃了Ascii扩展字符集,制定了一个新的规则,当字符小于127时还是按Ascii的意思来表达,如果有两个大于127的字符连在一起就有可能是一个汉字了,其中前面的一个字节(高字节)范围是A1h到F7h,后面一个字节(低字节)是A1h到FEh,来表示6763个汉字和682个非汉字图形字符。这种编码方式就叫做GB2312。但是中国还有很多很多汉字,GB2312没办法满足全部的需求,于是后来又推出了GBKGB18030。这些编码都是可以向前兼容的。

当时各个国家都有各种的编码标准,出了各种各样的编码方式,想要电脑支持某一种语言,就要装上对应的编码系统。最终各个国家联合起来,发明了一种叫Unicode的编码方式,这种编码也叫做万国码、统一码。使用2个字节来表示字符,囊括了世界上几乎所有的字符。

因为Unicode编码方式每一个都需要2个或更多字节来表示一个字符。本来只使用一个字节的Ascii需要在前面补0,对存储是一种极大的浪费。于是就发明了UTF-8对Unicode再次编码来解决这个问题,用一种可变长度的方式减小了存储的浪费。

二、Unicode中文编码范围

注意:一般只使用基本汉字就可以了。

</
字符集 字数 Unicode 编码
基本汉字 20902字 4E00-9FA5
基本汉字补充 38字 9FA6-9FCB
扩展A 6582字 3400-4DB5
扩展B 42711字 20000-2A6D6
扩展C 4149字 2A700-2B734
扩展D 222字 2B740-2B81D
康熙部首 214字 2F00-2FD5
部首扩展 115字 2E80-2EF3
兼容汉字 477字 F900-FAD9
兼容扩展 542字 2F800-2FA1D
PUA(GBK)部件 81字 E815-E86F
部件扩展 452字 E400-E5E8
PUA增补 207字 E600-E6CF
汉字笔画 36字 31C0-31E3
汉字结构 12字 2FF0-2FFB
汉语注音 22字 3105-3120
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值