UNICODE扩展了CJK统一汉字编码

 2024-01-23 04:01:34  阅读 0

20 世纪中叶,国际标准 ISO 10646 想要整合各种文本编码方案。 但草案(DIS 10646)并没有统一各种汉字字符集,部分成员国也表示反对,这必然导致新的编码()。 幸运的是,两者最终达成一致,ISO 10646:1993正式对应版本1.1。 否则,世界上就会有两个不同的字符集。

1. 编码流程

很久以前,计算机制造商有自己的表示字符的方式。 随着计算机越来越普及,制造商之间的竞争也越来越激烈,不同计算机系统之间的数据转换变得令人头疼。 最终,计算机制造商共同开发了一种描述字符的标准方法。 他们定义了使用字节的低 7 位来表示字符。 例如字母A是65,c是99,~是126等等,ASCII码就这样诞生了。 最初的 ASCII 标准定义了从 0 到 127 的字符,正好可以用七位来表示。 然而好景不长,其他国家的人们趁此机会开始使用128到255范围内的编码来表达自己语言中的字符。 勤劳的中国人民也行动起来了。 我们毫不客气地取消了数字127后面的奇怪符号,并规定:小于127的字符与原来的含义相同,但当两个大于127的字符连接在一起时,就代表一个汉字。 第一个字节(他称之为高字节)是从0xA1到0xF7,下一个字节(低字节)是从0xA1到0xFE。 这样,我们就可以组合出7000多个简体汉字了。 。 在这些代码中,我们还包括数学符号、罗马和希腊字母以及日语假名。 就连原本存在于ASCII中的数字、标点符号、字母都被重新编码成了两个字节长的代码。 ,通常被称为“全角”字符,而原本127以下的字符被称为“半角”字符,这种汉字方案被称为“”。

后来相应的编码方案不能满足应用需求,于是陆续进行了扩展。 首先,干脆不再要求低字节必须是127之后的内码。只要第一个字节大于127,就总是意味着这是一个汉字的开头,无论什么下面是在扩展字符集中。 由此产生的扩展编码方案称为 GBK 标准。 GBK收录了全部内容,同时增加了近2万个新汉字(含繁体字)和符号。 后来少数民族也想用计算机,我们就对其进行了扩展,增加了几千个新的少数民族字符,GBK就被扩展了。 从此,中华民族的文化得以在计算机时代得以传承。 这就带来了一点麻烦:字符串的长度和编码的长度并不完全对应,所以往往会解决中英文混用的问题。 这对中国程序员来说不是问题。 一个有趣的(xiao)函数可以解决这个问题。 另一个稍微大一点的问题是错误的传染性,某个地方丢失一个字节可能会导致后续文章变成乱码!

当各个国家像中国一样拿出自己的编码标准时,没有人理解彼此的编码,也没有人支持其他人的编码。 即使相距仅150海里的中国和台湾也使用相同的代码。 同一语言的兄弟也想出了自己的编码:BIG5。 ISO国际组织实在无法忽视,于是在1991年他们重新创建了一个包含地球上所有文化、所有字母和符号的代码! 他们计划将其称为“-Octet Coded Set”,简称UCS,俗称“”。 他们雄心勃勃,创建了一个包含 65535 个码表的字符集,相信它可以覆盖所有字符。 该套件是 UCS-2。 由于容量严重不足,ISO后来推出了UCS-4解决方案。 简单来说,四个字节代表一个字符,这样我们就可以组合21亿个不同的字符(最高位还有其他用途)。

其背后的想法非常简单,但常常被误解。 它就像一本电话簿,标记了字符和数字之间的映射。 乔尔称它们为“神奇数字”,因为它们可能是随机分配的,没有任何解释。 官方术语是代码点,总是以 U+ 开头。 它不涉及字符如何用字节表示,只是指定了字符对应的数字,仅此而已。 他的编码和传输问题都是用UTF()来定义的,我们通常遇到的就是UTF-8、UTF-16和UTF-32。

2. 汉字编码

它是国际组织制定的一套字符编码方案,可以容纳世界上所有的文字和符号。 使用16位来表示一个字符,总共可以表示216(=65536)个字符。 目前,苹果、惠普、IBM、微软和甲骨文等IT公司都在采用,各个领域都已采用它作为行业标准。 每个国家或地区的 可以在代码网站上找到。 第一个版本1.0.0于1991年发布,至今已经补充了20多次。 截至本文发表时最新版本为2022年9月发布的15.0。1.0.0包含第一批汉字。 回到本文开头的问题,这里的汉字是指广义的汉字。 字符集由中国大陆、香港、日本、朝鲜、韩国、台湾和越南提供。 在此基础上编制了《中日韩统一表意文字》(CJK,该字符集通常称为基本汉字或基本区),其中包括汉字。 20,902,后来增加到 20,976。

c unicode编码转换中文_utf-8编码转换中文_unicode编码转换中文

以及统一的汉字编码分配

码位范围

码位范围

代码号

字符数

字符类型

第一个字节是0x81~0xA0,最后一个字节是0x40~0xFE(0x7F留空)

$4E02~$72DB(GBK扩展区)

6080

6080

3区,中日韩,笔顺

第一个字节是0xA1~0xA7,最后一个字节是0x40~0xA0(0x7F留空)

(GBK用户区)

第672章

用户区3

第一个字节是0xA1~0xA7,最后一个字节是0xA1~0xFE

-80区

第722章

606

1区,图形符号

第一个字节是0xA8~0xA9,最后一个字节是0x40~0xA0(0x7F留空)

(GBK扩展区)

128

166

5区,图形符号

第一个字节是0xA8~0xA9,最后一个字节是0xA1~0xFE

-80区

124

122

1区,图形符号

第一个字节为0xAA~0xFE,最后一个字节为0x40~0xA0(0x7F留空)

$72DC~$9FBB (GBK扩展区)

$F92C~$FA29(中日韩兼容字)

8160

8145

区域 4,CJK 扩展 A、U 代码序列

第一个字节是0xAA~0xAF,最后一个字节是0xA1~0xFE

(GBK用户区)

第564章

用户区1

第一个字节是0xB0~0xF7,最后一个字节是0xA1~0xFE

$4E00~$9F44

(-80区域)

6768

6763

第二区:CJK、拼音序列

第一个字节是0xF8~0xFE,最后一个字节是0xA1~0xFE

(GBK用户区)

第658章

双字节用户区2

(0x30~0x39是二到四字节编码)

$2F00~$2FDF

224

214

康熙激进

(0x81~0xFE为三字节编码)

$3400~$4DB5

6530

6530

中日韩扩展名 A

(下同编码规则)

$9FA6~$9FEF

74

66

CJK统一汉字(新)

(U2是二平面)

42711

42711

中日韩扩展 B

(U2是二平面)

4149

4149

中日韩扩展名 C

(U2是二平面)

222

222

CJK 扩展 D

(U2是二平面)

5762

5762

CJK 扩展 E

(U2是二平面)

7473

7473

CJK 扩展名 F

在过去的 30 年里,已经发布了扩展集来补充 CJK 表意文字的内容。 共发布7个扩展集:扩展A(6582字)、扩展B(42711字)、扩展C(4149字)、扩展区D(222字)、扩展区E(5762字)、扩展区F (7473字),扩展区G(4939字)。 CJK统一汉字基本集的汉字码位范围为U+4E00至U+9FA5。 -2022四字节部分还包括CJK统一汉字U+9FA6至U+9FFF(不含9FB4至9FBB这8个字符); 扩展区A对应字符集的基本多语言平面BMP; 扩展区B至G对应字符集的第二辅助平面,起始码为$20000。 最新的扩展G是2022年9月发布的15.0。15.0增加了4489个新字符,使字数达到字符数,其中包括20个新表情符号和4193个CJK中日韩表意文字。 添加了八个新字符块 - 中日韩统一表意字符扩展 (CJK) A 到 H:

1、1997版2.0版多语言基本集按拼音和部首顺序编译成-80和GBK扩展区(-2022两字节部分),范围从U+4E00到U+9FBB。

2、2000年3.0版本增加了中日韩A,共6582个字,编译成-2022四字节部分,范围从U+3400到U+4DB5。 涉及双字节和四字节编码部分。 王立军指出了三对同形字:(1)U+3B35“㬵”与汉日韩0“角”同形,(2)U+39B3“㘽”与U+36B3同形“㦳”,(3)U+439B“䎛”与U+3588“㖈”形状相同;

3、2001年,3.1版增加了中、日、韩B,共42711个字符(较大的扩展),范围从$20,000到$2A6DF,即9532:8236到9835:F345。 库克指出了八对同形字:(1)U+20457与中日韩的A“㒨”(两个字形)同形,(2)U+2420E与中日韩的A同形“㶷”,(3) U+27144 类似于汉日韩的 0“聁”,多了两个㓰,(4) U+23515 与 U+204F2 形状相同“⿱如杰”,(5) U+249E9 与 U+249BC“⿱⿰目㕚玉”形状相同,(6) U+2A415 与 U+24BD2“⿳殸镀干”形状相同,(7) U+26866 形状相同与U+26842“⿰月东”,(8) U+27EAF 与兼容字“﨣”形状相同;

4、2003年5.2版本增加了中、日、韩C,4149个字符,范围从$2A700到$2B734,即9835:F738到9839:9E36;

utf-8编码转换中文_unicode编码转换中文_c unicode编码转换中文

5、2010年6.0版本增加了中文、日文、韩文D,222个字符,范围从$2B740到$2B81d,即9839:9F38到B539;

c unicode编码转换中文_utf-8编码转换中文_unicode编码转换中文

6、2015年8.0版本增加了中文、日文、韩文E,5762个字符,范围从$2B820到$2CEA1,即9839:B632到9933:FE34;

unicode编码转换中文_utf-8编码转换中文_c unicode编码转换中文

7、2017年10.0版本增加了中文、日文和韩文F,7473个字符,范围从$2CEB0到$2EBE0,即9934:8138到9939:F730;

unicode编码转换中文_c unicode编码转换中文_utf-8编码转换中文

8、2020版本13.0增加中日韩G,4939字;

9、2021年版本14中,新增中日韩组件,新增838个字符,共计3个字符。 新添加的内容还包括 5 个新脚本,总共 159 个脚本,最后还有 37 个新表情符号。

10、2022年15.0版本新增中日韩H,4192个字符; 该版本新增字符4489个,字符总数达到4193个,新增文字2个,文字总数161个,新增表情符号20个,中日韩表意文字4193个。

12、还有114个字符,又一码依次填入字符0、A、B、C的尾部。

13、“㦳”、“㖈”、“㶷”、“⿱如杰”、“⿱⿰目㕚玉”、“⿳殸镀干”、“⿰月”等十一对同形字向内东”和“﨣”可以被认为是重复的。 最后的总数是...

汉字编码有两套标准:一套是UCS-2,使用两个字节对字符进行编码;一套是UCS-2,采用两个字节对汉字进行编码。 另一种是UCS-4,使用4个字节对字符进行编码。 简体中文和繁体中文总共有7万个汉字,而UCS-2最多可以表示65536个(216=65536),所以它智能地排除了一些几乎不用的汉字,只适用于7万多个常用简体汉字。 为了表示所有汉字,USC-4也是适用的,但现在汉字一般采用UCS-2,只用两个字节进行编码。

品种查询渠道:

汉字对应表:

基本设定对照表:

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码