无名 发表于 2022-5-8 17:43:59

【二】UCS-2和UCS-4


ISO 10646标准为“通用字符集”(UCS)定义了一种16位的编码形式(即UCS-2),UCS-2全称Universal Character Set coded in 2 octets,从英文上就可以看出含义,以2字节编码的通用字符集编码,固定占用2个字节,它包含65536个编码空间(可以为全世界最常用的63K字符编码,为了兼容Unicode,0xD800-0xDFFF之间的码位未使用)。例:“汉”的UCS-2编码为6C49。

除此之外ISO 10646标准为“通用字符集”(UCS)还定义了一种31位的编码形式(即UCS-4),UCS-4全称Universal Character Set coded in 4 octets,其编码固定占用4个字节,编码空间为0x00000000 ~0x7FFFFFFF(可以编码20多亿个字符)。

随着Unicode与ISO 10646合并统一,Unicode就用UCS通用字符集标准,早期的Unicode编码实现也就采用了UCS-2和UCS-4。(准确来说是UCS-2,UCS-4基本上是理论,没付诸实际,毕竟早期65536个字符已经够用了,我两个字节编码能实现的事,脑子笨的人才会用四个字节实现,你以为存储和带宽有多的)http://cdn.u1.huluxia.com/g4/M01/17/30/rBAAdl601D-AUi1BAANQACfX8GU801.jpg
在这里插入图片描述这里编码最多也就存在UCS-2(big Endian和Little Endian

Unicode字符集只规定了码点和文字之间的对应关系,并没有规定码点在计算机中如何存储。UCS-2和UCS-4就规定了具体的实现,后来改进演变为了UTF-16, UTF-32。然后又创造了一种全新的简单粗暴好用的变长编码UTF-8,于是乎这三哥们就形成了现代Unicode字符集编码实现的三剑客

资源来源于网络 侵删
页: [1]
查看完整版本: 【二】UCS-2和UCS-4