合聚咖

合聚咖

刨根究底字符编码之六——简体汉字编码中区位码、国标码、机内码、外码、字形码的区别及关系

admin

汉字编码探秘:六种常见编码解析

1. 区位码:这是汉字编码的基础,将汉字安排在一个94×94的矩阵中。例如,“万”字的区位码是45 82。在编码领域,区位码起到了基础定位的作用。

2. 国标码:为了解决与ASCII字符的冲突,区位码需要转换为国标码。国标码通过将区位码的高位字节加80H,低位字节加80H,从而实现与ASCII字符的区分。

3. 机内码:国标码为了避免与ASCII字符冲突,每个字节最高位设为1(即+128H),这样机内码就完全避免了与ASCII字符的冲突。

4. 外码:也称为输入码,如五笔、拼音输入法等,是为了用户方便输入汉字而设计的编码方式。外码可能存在重码,需要其他机制来确保准确性。

5. 字形码:也称为点阵代码,用于在屏幕上显示汉字的形状。字形码通常以16×16或24×24点阵的形式存在,每个字符需要的存储空间是根据点阵的大小来计算的。

6. ASCII码:与汉字编码体系形成对比,ASCII码不需要输入码,它是与现代汉字编码体系不同的字符编码方式。

通过GB系列编码,我们可以看到区位码、国标码、机内码之间的转换逻辑。在下一章,我们将深入探讨ANSI编码和代码页,探索更多编码方式的奥秘。