什么是字符编码

2017-03-06  本文已影响0人  莱昂纳德刚

字符编码,编码的意思是指将数据通过一定方式表达或储存。所以字符编码就是字符的表现、储存方式,也就是字符集的实现方式。

对于一个字符集来说要正确编码转码一个字符需要三个关键元素:字库表(character repertoire)、编码字符集(coded character set)、字符编码(character encoding form)。其中字库表是一个相当于所有可读或者可显示字符的数据库,字库表决定了整个字符集能够展现表示的所有字符的范围。编码字符集,即用一个编码值code point来表示一个字符在字库中的位置。字符编码,将编码字符集和实际存储数值之间的转换关系。一般来说都会直接将code point的值作为编码后的值直接存储。例如在ASCII中A在表中排第65位,而编码后A的数值是0100 0001也即十进制的65的二进制转换结果。

字符编码 每个字符字节数
ASCII 1
UCS-2(Unicode) 2
UCS-4(Unicode) 4
UTF-8(Unicode) 1 - 6
UTF-16(Unicode) 2 - 4
GBK/GB2312(中文) 1 - 2
GB18030(CJK) 1 - 4

从上表可以看出,不同的字符编码用不同的方式表达字符集。

所以,根据所需要的字节数不同,把恒用2个字节表示一个字符的字符集(编码),叫做双字节字符集(Double-Byte Character Set,DBCS),其他的叫做多字节字符集(Multi-Byte Character Set,MBCS)。如上表中只有UCS-2才是DBCS字符集。

常见的字符集:

上一篇下一篇

猜你喜欢

热点阅读