感悟网 导航

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

作者&投稿:兀有康 (若有异议请与网页底部的电邮联系)
~

汉字编码之旅:六种编码方式的解密


在数字化的世界中,汉字的编码犹如语言的密码,GB系列编码(GB2312、GBK、GB18030)正是这些密码的编织者。每个字符,无论是常用还是罕见,都由区位码的94×94个格子构成,如“万”字区位码为45 82,它在编码领域中扮演着关键角色。



  • 区位码:汉字的基石,由高位字节45(对应77)和低位字节82(对应114)组成,这是字符编码的最初形式,但为了避开ASCII字符冲突,区位码需要加上32,形成国标码。

  • 国标码(交换码):国标码是区位码的升级版,通过将高位字节加80H(ASCII控制字符)和低位字节加80H(全角字符)来区分,以确保与ASCII字符的兼容。

  • 机内码(内码):内码是国标码的延伸,每个字节的最高位被设为1(即+128H),这样做的目的是完全避免与ASCII字符的冲突,使得汉字编码与ASCII字符空间互不干扰。


GB2312的设计巧妙地将ASCII字符的可打印部分(33~126)转换为全角,同时保留了控制字符。区位码的调整策略,确保了与ASCII世界的无缝对接。


接下来,我们转向输入层面:外码(输入码),如五笔、拼音输入法,它们是为用户便捷输入汉字而设计的符号编码,可能包含重码,需要额外的选择机制来确保准确性。


而在输出阶段,字形码(点阵代码)登场,以16×16或24×24点阵等形式展现汉字的图形,每个字符需要特定的存储空间计算,如字节数=点阵行数×(点阵列数/8)。


总结:



  • 内码:编码的核心,确保汉字的统一性;

  • 外码/输入码:输入友好,满足日常使用需求;

  • 字形码/输出码:用于屏幕上清晰呈现,是视觉呈现的关键;

  • ASCII码则无需输入码,与现代汉字编码体系形成对比。


通过GB系列编码,我们了解了区位码、国标码和机内码之间的转换逻辑。继续我们的编码探索之旅,下一章我们将深入探讨ANSI编码和代码页,敬请期待!



  • 上一篇:《字符编码五:简体汉字编码的全貌》

  • 下一篇:《字符编码七:ANSI编码与代码页的深入解析》



《刨根究底字符编码之六——简体汉字编码中区位码、国标码、机内码...》
答:区位码:汉字的基石,由高位字节45(对应77)和低位字节82(对应114)组成,这是字符编码的最初形式,但为了避开ASCII字符冲突,区位码需要加上32,形成国标码。国标码(交换码):国标码是区位码的升级版,通过将高位字节加80H(ASCII控制字符)和低位字节加80H(全角字符)来区分,以确保与ASCII字符的...

《刨根究底字符编码之五——简体汉字编码方案(GB2312、GBK等)以及全角...》
答:一、走进字符编码的世界:从ASCII到GB系列字符编码的历史舞台上,ASCII用一个字节的精巧解决了基本字符的表示,但面对汉字的挑战,GB系列编码如GB2312、GBK和GB18030登场,它们巧妙地兼容ASCII,却又别具一格。这些编码方案的诞生,是为了满足汉字数量的爆炸性增长,以及对多元文化字符的包容。二、GB2312:...

《刨根究底字符编码之七——ANSI编码与代码页》
答:代码页的核心功能是字符与字节的转换,无论是输入法的输入码到机内码的转变,还是字体显示字符的依据。在Windows中,系统区域设置是关键,通过控制面板调整,可以确保非Unicode程序的字符编码匹配,避免乱码。比如,选择874编码(泰文)或936编码(简体中文)等,系统默认的ANSI编码(如默认代码页)会根据系统...

《刨根究底字符编码之三——字符编码的由来》
答:为了确保字符在不同计算机之间的一致性,必须制定统一的转换规则,这就是字符编码标准的诞生背景。二、EBCDIC与ASCII的较量 最早期的字符编码标准是EBCDIC,由IBM为大型机系统开发。然而,它的设计存在缺陷,字母排列不连续,这使得EBCDIC在个人计算机领域并未大行其道。相比之下,ASCII码在1968年由ANSI推出,...

《刨根究底字符编码之十二——UTF-8究竟是怎么编码的》
答:编码算法详解 UTF-8的编码并非简单粗暴,而是通过精心设计的前缀码来识别字符长度。如果首字节是0,那它是一字节编码,ASCII字符的直接体现;110开头的表示双字节,后续字节以10开头;1110和10开头则代表三字节和四字节编码。这种编码规则确保了每个字符都能准确无误地被识别和解码。编码空间与临界值 从127...

《刨根究底字符编码之一——关键术语解释(上)》
答:字与字长 - 计算能力的衡量:在计算过程中,字是数据处理的核心单元,字长则决定了每次操作的范围。现代处理器普遍以64位为主,而嵌入式设备则可能采用32位,专业领域的需求则更高,字长的长短直接影响着计算效率。速率 - 速度与效率的体现:字符编码的速度和效率直接受制于字长和处理器性能。一个快速...

《刨根究底字符编码之十四——UTF-16究竟是怎么编码的》
答:然而,UTF-16的扩展性和适应性并非无限,它面临着被UTF-8这样高效编码可能取代的挑战。编码增补平面字符的秘诀在于四个步骤:首先,将超出BMP的码点减去0x10000,得到20位的比特组;接着,高位的10位加上0xD800,形成引导代理,低位10位加上0xDC00,构成尾随代理;最后,将这两部分合并,形成那个“独...

《刨根究底字符编码之八——Unicode编码方案概述》
答:Unicode字符集是开放和扩展的,如我们熟知的Emoji表情,就融入了其中。UCS字符集则衍生出UCS-2和UCS-4,其中UCS-2已逐渐被淘汰,UCS-4与UTF-32基本等价。每个字符都有其独一无二的码点值和名称,如U+0041代表大写字母A,U+4E25则对应汉字“严”。值得一提的是,Unicode编码与ASCII字符集的十进制0...

《刨根究底字符编码之十一——UTF-8编码方式与字节序标记BOM》
答:UTF-8:Unicode编码的革命性选择 UTF-8,作为Unicode标准的基石,巧妙地解决了UTF-16的效率与兼容性矛盾。这个变长的8位编码系统,通过1到4个字节来表达无限的Unicode字符,对ASCII字符透明,且与ASCII无缝对接。它以高效前向解析、容错性强和自同步的特性,赢得了互联网世界的青睐。卓越特性一览 编码...

   

返回顶部
本页内容来自于网友发表,若有相关事宜请照下面的电邮联系
感悟网