这篇博客介绍万国码中的实际存储编码
ucs-2
变长存储与不变长存储
ucs-2
是我们介绍的第一种实际存储编码,对实际存储编码我们要先说两个概念:变长存储
与不变长存储
- 变长存储:各个字符编码的长度可能不同,如
utf-8
- 不变长存储:每个字符编码的长度都是相同的,如
ucs-2
、utf-32
ucs-2是什么
ucs2
是一种理论编码
,ucs-2
是一种实际存储编码
,它是对ucs2的实现.ucs-2
编码有时也称为Unicode
编码
ucs-2的特点
- ucs-2每个编码都是2个字节,不变长存储.
- 最多可以有65536个编码.
引出utf-8
- 在ucs-2中每个字符都是2个字节,对于汉字来说还好,所在的汉字这两个字节都会用到.
- 但对于拉丁字符,就会浪费高8位的那个一字节,例如
A
在ucs-2中的编码就是00000000 01000001
,高8位的那个0
就是为了2个字节的定长存储填充上去的,显然这个字节的空间就浪费了. - 为了解决这个问题,出现了
utf-8