background image

储汉字使用的汉字机内码,用以将输入时使用的多种汉字输入码统一转换成汉字机内码

 

进行存储,以方便机内的汉字处理 汉字机内码是在计算机内部存储、处理的代码。计算机
既要处理汉字,又要处理英文。因此计算机必须能区别汉字字符和英文字符。英文字符的
的机内码是最高为为 0 的 8 位 ASCII 码。为了不与 7 位 ASCII 码发生冲突,把国标码每个
字节的最高位由 0 改为 1,其余位不变的编码作为汉字字符的机内码。

 

    汉 字 机 内 码 的 范 围 用 二 进 制 表 示 是 : 10100001  10100001  11111110 
11111110   机 内 码 的 高 位 和 低 位 比 对 应 的 国 标 码 的 高 位 和 低 位 大 (128)10 或
(10000000)2 或(80)H 

 

 

即: 机内码高位 = 

 

国标码高位 + 80H 

 

机内码低位 = 国标码低

 

位 + 80H 

 

 

又因为: 国标码高位 = 

 

区码 + 20H 

 

国标码低位 = 

 

位码 + 20H 

 

所以: 机

 

内码高位 = 

 

区码 + A0H 

 

机内码低位 = 

 

位码 + A0H 也就是说,机内码高位和机内码低

位分别比对应的区码和位码大(160)10 或(10100000)2

 

或 (A0)H 例如:汉字"啊"的区

位码为"1601",其中区码为(16)10 或(10)H,位码为(01)10 或(01)H  

 

。 则: 机内码高

 

位 = 10H + A0H = B0H 

 

机内码低位 = 01H + A0H = A1H 

 

所以: 机内码= B0A1H

以下是引用片段:

<!--[if !supportEmptyParas]--> <!--[endif]-->

  3) 汉字输入码(外码)
  汉字输入码(外码)

 

是为了通过键盘字符把汉字输入计算机而设计的一种编码。英文输

入时,相输入什么字符便按什么键,输入码和机内码一致。汉字输入时,可能要按几个键

 

才能输入一个汉字。 汉字输入方案有成百上千个,但是这千差万别的外码输入进计算机

 

后都会转换成统一的内码。 汉字输入方案大致可分为以下 4 种类型:
  (1) 音码:如全拼、双拼、微软拼音等
  (2) 形码:如五笔字型、郑码、表形码等
  (3) 音形码:如智能 ABC、自然码等
  (4) 数字码:如区位码、电报码等
  4) 汉字字形码(输出码)
  汉字字形码(输出码)

 

用于汉字的显示和打印,是汉字字形的数字化信息。汉字的内码

是用数字代码来表示汉字,但是为了在输出时让人们看到汉字,就必须输出汉字的字形。

 

在汉字系统中,一般采用点阵来表示字形。16 *16

 

汉字点阵示意 16 * 16 点阵字形的字

要使用 32 个字节(16 * 16/8= 32)存储,24 * 24 点阵字形的字要使用 72 个字节(24 * 
24/8=72)存储。
  一般来说,表现汉字时使用的点阵越大,则汉字字形的质量也越好,当然每个汉字
点阵所需的存储量也越大。
  5) 汉字地址码
  汉字地址码是指汉字库(这里主要指整字形的点阵式字模库)中存储汉字字形信息的
逻辑地址。在汉字库中,字形信息都是按一定顺序(大多数按标准汉字交换码中汉字的排
列顺序)连续存放在存储介质上的,所以汉字地址码也大多是连续有序的,而且与汉字内
码间有着简单的对应关系,以简化汉字内码到汉字地址码的转换。

以下是引用片段:

*/ 
<!--[if !supportEmptyParas]--> <!--[endif]-->

#include "stdafx.h"