【发布时间】:2012-04-25 23:52:51
【问题描述】:
可能重复:
Why UTF-32 exists whereas only 21 bits are necessary to encode every character?
在 UTF-32 中,最大的 Unicode 代码点是 0x10FFFF。 UTF-32 有 21 个信息位和 11 个多余的空白位。那么为什么没有 UTF-24 编码(即去掉高字节的 UTF-32)将每个代码点存储在 3 个字节而不是 4 个字节中?
【问题讨论】:
-
原因很简单,因为没有 24 结构。有 16、32、8、2,所以 24 是奇数。加上内存块通常以 2^x 块的形式提供。这与计算机没有配备 24MB 或 HDD 没有宣传 24GB 而不是 16GB 和 32GB 的原因相同。
标签: unicode character-encoding utf-32