380 likes | 547 Views
第三讲 汉字编码技术. 苏州大学计算机科学与技术学院. 从广义角度看 字典 / 词典编码方法,用于在字典和词典中的快速定位 ,常见的方法:部首、笔画、拼音和四角号码等 从狭义角度看 汉字键盘编码,用计算机键盘上的按键为汉字编码. 汉字编码的概念. 20 世纪 70 年代 起步阶段,拼音编码、五笔字形、自然码等,效率较低 20 世纪 80 年代中期 轰轰烈烈的“大跃进”式编码活动,但没有什么发展 20 世纪 90 年代 萧条期 进入 21 世纪后 将是又一个发展期,数字编码方案将占主导. 汉字编码的发展. 字符集 / 字汇和词汇
E N D
第三讲 汉字编码技术 苏州大学计算机科学与技术学院
从广义角度看 字典/词典编码方法,用于在字典和词典中的快速定位 ,常见的方法:部首、笔画、拼音和四角号码等 从狭义角度看 汉字键盘编码,用计算机键盘上的按键为汉字编码 汉字编码的概念
20世纪70年代 起步阶段,拼音编码、五笔字形、自然码等,效率较低 20世纪80年代中期 轰轰烈烈的“大跃进”式编码活动,但没有什么发展 20世纪90年代 萧条期 进入21世纪后 将是又一个发展期,数字编码方案将占主导 汉字编码的发展
字符集/字汇和词汇 字符集/字汇 多/少 词汇 多/少 特指某个编码方案编码词组的集合 码元 组成输入码的字符集合称为码元。 如拼音码的码元是“a”-“z”中的任意一个字母;纵横码的码元是“0”-“9”中的任意一个数字 。 汉字编码中的几个概念(1)
码长 输入码的长度称为码长。如输入码“123”的码长为3 等长编码,如区位码等 不等长编码,如拼音码、纵横码等 单码和重码 一个编码可能对应多个汉字和词组,那么这些汉字或词组称为重码。一个编码对应的汉字和词组只有一个时,称该汉字和词组为单码。 汉字编码中的几个概念(2)
编码空间和编码效率 所有可能的输入码集合,称为编码空间。 编码空间的大小依赖于码元集合和码长。 如某个编码方案的码元共有K个,编码采用等长码,长度为i,则编码空间大小为:C=Ki, 如区位码的编码空间大小为:C=104,即10000个。 编码效率简单而言是指编码的字汇/词汇除以编码空间的大小。 如区位码,它的字汇大小为6763,则编码效率为6773/10000=67.73%。 汉字编码中的几个概念(3)
熵,在信息论里叫信息量。从控制论的角度来看,应叫不确定性。熵,在信息论里叫信息量。从控制论的角度来看,应叫不确定性。 最简单的是只有两种可能性,非此即彼,我们以这种事物的信息量为单位,叫1比特(bit)。如果可能性数目有2的n次方(N=2n),那就是n比特,即信息量等于可能性数目N的“以2为底的对数”:H=㏒2N=㏒N/㏒2。 信息量应按符号的可能性(数学上叫概率大小)来计算,它是概率的负对数。平均信息量就是它们的加权平均 H=-∑pi㏒pi(1≤i≤n) 文字信号的信息量H是信号个数n的以2为底的对数: H=㏒n/ ㏒2。英文有 26个字母,每个字母的信息量H=㏒26/ ㏒2=4.700。 汉字的墒(1)——信息量的概念
法文 3.98比特 意大利文 4.00比特 西班牙文 4.01比特 英文 4.03比特 德文 4.10比特 罗马尼亚文 4.12比特 俄文 4.35比特 中文 9.65比特 各种语言的字母的信息量
假设给定一个汉字字符集HZ,其中汉字数为n,则该字符集的熵为 H=-∑Pi㏒Pi(1≤i≤n) 其中,Pi为单个汉字在汉语文本中出现的概率,-㏒(Pi)是第i个汉字出现时的信息量,-∑㏒(Pi)是所有汉字在不考虑前后相关性时所给出的全部信息量。H是该集合中的每个汉字的平均信息量。 汉字的墒(2)——汉字墒的概率分布
平均信息量(信息熵)表示存储或表示该汉字字符集所需要的二进制位数(中文约为9.65bit)。根据每个汉字的平均熵,通过采用不等长编码可以提高汉字存储和传输效率。平均信息量(信息熵)表示存储或表示该汉字字符集所需要的二进制位数(中文约为9.65bit)。根据每个汉字的平均熵,通过采用不等长编码可以提高汉字存储和传输效率。 信息量(信息熵)与字的使用频度成反比。即频度下降一半,其信息量增加1位。 对汉字编码而言,采用多于2个码元时,汉字的平均熵也会下降。如: 当m=2时, Lmin (3,4) 当m=47时 Lmin (1.73,2.73) 不同领域,字的使用频度不同,因此,对大系统内的汉字信息熵的意义不大。 汉字的墒(3)——汉字墒的意义
从心理学角度来看,根据汉字音信息的汉字编码,人在大脑中无需进行任何的思考,就可以输入汉字,所以说是最为直接的输入方式。根据汉字形信息的汉字编码,用户在输入时,大脑需要把语言转换为字形,然后才能输入,所以说是一种间接的输入方式。从心理学角度来看,根据汉字音信息的汉字编码,人在大脑中无需进行任何的思考,就可以输入汉字,所以说是最为直接的输入方式。根据汉字形信息的汉字编码,用户在输入时,大脑需要把语言转换为字形,然后才能输入,所以说是一种间接的输入方式。 汉字心理学和模糊心理学的研究表明,人认字时上半部优于下半部,外围优于中间。 从排列心理学角度来看,希望汉字的编码能尽量唯一,并能尽量表达汉字的本身特征。 汉字键盘编码的依据——心理依据
汉语拼音的语言形式有三个要素:声母、韵母和声调。三者构成一个音节。其中声母有21个,韵母有35个。声调有五种:阴平、阳平、上声、去声和轻声。声韵结合起来有417个基本音节,如果考虑声调,总共有1330个左右的音节。汉语拼音的语言形式有三个要素:声母、韵母和声调。三者构成一个音节。其中声母有21个,韵母有35个。声调有五种:阴平、阳平、上声、去声和轻声。声韵结合起来有417个基本音节,如果考虑声调,总共有1330个左右的音节。 所有的计算机用汉字的发音都在这些音节范围内。这就是汉字同音字/词多的根本所在。如在GBK中,拼音“yi”有个460多个对应的汉字。 同样也存在大量的同音词。这就造成重码多和输入不方便。这是以音作为编码要素存在的主要问题。 汉字键盘编码的依据——汉语拼音
汉字的字形分为三级:笔画、汉字部件(如偏旁部首)和整字。由笔画构成汉字部件,由汉字部件构成整字。 绝大多数根据汉字字形的编码方案基本上是基于部件的编码,如“五笔”、“表形码”等。 基于部件的汉字编码需要解决的问题是:汉字如何拆分? 用汉字部件编码的最大问题是部件的规范问题。 汉字键盘编码的依据——汉字部件
笔画/笔顺编码是选取汉字的基本笔画(如五种或八种),把笔画定义到汉字的数字键和字母键上,然后依笔顺或汉字的笔顺来给汉字编码。 笔画输入近年来受到了特别的重视,主要是手机迅速普及所致。 笔画输入的优势在于简单,无需学习和记忆。笔画输入的困难在于单字输入重码多、词组输入效率低、句子输入则困难。 汉字键盘编码的依据——笔画/笔顺
将汉字按照一定顺序排列后,给每个汉字以一个特定的顺序号,形成的汉字编码称为流水码,也称无理码或顺序码。一个现成的顺序就是汉字内码的排列顺序,区位码和内码就是其中的两个实例。 流水码的好处在于编码与汉字一一对应,绝无重码。 缺点是编码无规律,记忆难度大,不易掌握。 汉字编码的分类——流水码
音码是以汉字的发音为基础的一种汉字编码,一般以《汉语拼音方案》为蓝本进行设计。音码是以汉字的发音为基础的一种汉字编码,一般以《汉语拼音方案》为蓝本进行设计。 如智能ABC、全拼、双拼、微软拼音、紫光拼音等。 音码的最大好处是简单易学。 音码的缺点:汉字同音字太多,检索同音字使汉字输入速度大大减慢。 目前音码仍然是使用最广泛的编码,几乎96%以上的用户采用音码。值得一提的是:音码本身也在扬长避短,作了许多有益的改进。 汉字编码的分类——音码
形码是依汉字的字形来编码的。 如五笔字型、笔形码、大众码等。 形码有效地避免了按发音输入的缺陷,重码率也相对较低,为实现汉字的盲打提供了可能,成为专业人员的首选汉字输入码。 形码的部件多,分布广,记忆起来较难,同时须经过较长时间的学习训练才能熟练掌握。 汉字编码的分类——形码
音形码/形音码兼顾汉字的读音、字形两方面的特点进行混合编码。音形码/形音码兼顾汉字的读音、字形两方面的特点进行混合编码。 音形码在兼有音码和形码二者之长的同时,也兼有二者的一些弱点。 音形码在输入时既考虑汉字的读音又考虑汉字的写法,人需要思考的时间也会增多,造成输入时的瓶颈。 汉字编码的分类——音形码/形音码
海曼公式的一般形式为:T=a十bH(K) 其中,T为平均选择反应时间,K是选择信号的个数,H(K)为每一个信号的平均信息量,a和b是系数。 汉字编码时间的公式:T=a十blog2K十C a为大脑发出指令冲动到肌肉动作所需时间,即击键时间;blog2K理解为“选择时间与信息量成正比”的适用条件下,选择等概率键位所需时间的一种可采用的表达方式;C代表一个码元的平均“编码时间”,反应了思维时间和检索时间的长短。 海曼(Hyman)公式与汉字编码时间
小键盘区 功能按键区 大键盘区 键盘分区图
如果一种编码的码元集合为“a”-“z”这26个字母或它的子集,那么我们称这种码元的键盘映射方式为大键盘编码。如全拼和智能ABC等拼音编码、五笔、郑码等等。如果一种编码的码元集合为“a”-“z”这26个字母或它的子集,那么我们称这种码元的键盘映射方式为大键盘编码。如全拼和智能ABC等拼音编码、五笔、郑码等等。 各种拼音编码一般都是采用大键盘编码。 形码也有采用大键盘的,如五笔就是一个典型的例子。 一般采用大键盘的码长在3-4之间,平均码长一般不能超过4。 大键盘编码
采用键盘右边的数字区的“0”-“9”这10个数字进行编码的方法称为小键盘编码。如区位、纵横、字原、五笔数码等均是小键盘编码。采用键盘右边的数字区的“0”-“9”这10个数字进行编码的方法称为小键盘编码。如区位、纵横、字原、五笔数码等均是小键盘编码。 采用小键盘编码的以形码居多,音码也有但不多。形码一般都采用笔画编码。 音码在计算机小键盘上应用很少,主要是用在数码产品上,如手机、电话、遥控器等。实现时一般把26个英文字母映射到10个数字按键上。 小键盘编码
纵横码的键位图 字母数字映射图
大大键盘编码是指编码的码元不仅是大键盘上的26个字母,还包括10个数字和部分的其它符号。这种编码方案早期很多,如字元编码、钱码、陆码、绿色拼形等。大大键盘编码是指编码的码元不仅是大键盘上的26个字母,还包括10个数字和部分的其它符号。这种编码方案早期很多,如字元编码、钱码、陆码、绿色拼形等。 早期出现这样的编码方法主要是可以增加编码空间,从而降低重码率,实现快速输入。 这种编码方案已经很少了,主要是因为这种方案具有不易学和难记等缺陷。 大大键盘编码
小小键盘编码是指只用5个数字来编码,也就是码元数只有5个。小小键盘编码是指只用5个数字来编码,也就是码元数只有5个。 小小键盘编码方案主要是应用在手机等数码设备上,几乎所有的手机笔形编码均是采用小小键盘编码。 小小键盘编码 Nokia 笔画输入法小小键盘图
所谓的汉字数码是指用“0”到“9”十个数字对汉字的单字和词组进行编码,使得只用小键盘就可以完成汉字的输入,并可移植到手机以及各类PDA产品上使用。 数码键盘方案
在纵横汉字编码方案中,把笔形分为10类,分别用“0”到“9”这10个数字表示。在纵横汉字编码方案中,把笔形分为10类,分别用“0”到“9”这10个数字表示。 笔形与数字代码的关系可通过下列口诀记忆: “一横二竖三点捺,叉四插五方块六。七角八八九是小,撇与左钩都是零。” 取码规则是将汉字看成一个方块字,取汉字四个角的笔形为有关编码。 部分汉字的取码实例: 人(8) 中(5) 十(4)重(01) 要(14) 喜(46) 事(50) 纵横码
五笔数码按照笔画进行编码。笔画分为“横”、“竖”、“撇”、“捺”、“折”五种,分别用“1”、“2”、“3”、“4”、“5”作为代码。下表为基本笔画代码表:五笔数码按照笔画进行编码。笔画分为“横”、“竖”、“撇”、“捺”、“折”五种,分别用“1”、“2”、“3”、“4”、“5”作为代码。下表为基本笔画代码表: 五笔数码
6键6码键盘图 9键9码键盘图
该方案取5种基本笔画:“横(一)”(含“提”)、“竖(丨)”(含“竖勾”)、“撇(丿)”(包括“啄”)、“点(丶)”(含“捺”)和“折(乙)”(包括左折和右折),并且将这五种笔画赋予顺序值“1”-“5”。 数字统一码将汉字结构归纳概括为四种基本结构。它们是:上下结构,左右结构,包围结构,嵌套结构。同时规定一个汉字可以取一至六码。 字445576 各359251 右689 统一码
利用数字来表示汉字的笔划、拼音和部件,其特征是将左右(含左中右)结构的汉字定义为“左右字”,再按书写顺序把“左右字”分为“左部”与“右部” 。如下表所示: 把“左右字”以外的汉字都定义为“整体字”。根据规则进行数字编码。 左右数码
在编码字符集方面 在键位设置方面 在标点符号方面 在部件规范方面 在笔顺规范方面 与汉字编码有关的标准与规范说明
易学性 “学会使用汉字编码输入系统的时间应尽量短,并应符合使用汉语作为母语的使用者的思维习惯”。 GB/T 18031对数字编码更进一步提出要求:“做到上手能用”。 汉字输入平均码长 重码字词键选率 汉字键盘编码和输入系统的性能指标