汉字数字编码输入法研究

陈钦梧 邱树业 郑文若 朱诗生 陈永强

(汕头大学,汕头市大学路,515063qwchen@stu.edu.cn)

 

 

本文提出一种易学、易记、易用而高效的大众化汉字数字编码输入法,并对实现过程中的有关问题进行了讨论

关键词  汉字数字编码  汉字输入法  重码率

 

Study on digit coding input method of Chinese characters

Chen Qinwu  Zheng Wenruo  Qiu Shuye  Zhu Shisheng  Chen Yongqiang

(Shantou University, Shantou 515063 P.R.C.  qwchen@stu.edu.cn)

 

Abstract  In this paper, a digit coding input method for Chinese characters with popularity and high efficiency is presented which is easy to learn, memorize and use, and some problems related to the executing process are discussed as well.

 

Key words  Chinese characters digit coding;  Chinese characters input method;  Coded-repetition

 

1         

近几年来,随着具有中文显示/输入界面的移动电话等手持设备的大批涌现,国内外研究汉字数字编码输入法的热潮方兴未艾。特别在最近,各移动电话局相继开通了短信息服务、手机上网、电子商务等新业务,形成一股极大的热潮与机遇。这些对汉字输入都提出了更高的要求。因为汉字输入的问题不彻底解决,那么短信息服务、手机上网、电子商务等一系列涉及汉字输入的一切功能必将深受影响。就目前已产品化的几种汉字数字编码输入法来看,虽然它们都各具特色,各有一些优点,但还普遍存在效率不高——重码率太高、或击键次数太多等缺点。因此,汉字数字编码问题的解决已是迫在眉睫、时不我待的了。其应用前景是空前的。以手机为例,目前我国已拥有约五千万用户,而预测未来两至三年将翻两番,可见其市场规模是巨大的。

曾有一种观点,认为使用大键盘解决汉字输入尚且有困难,那么使用只有10个数字的小键盘来输入汉字就更困难了。这其实是认识上的一个误区[1]。我们不妨从理论上分析一下:若使用大键盘26个字母键来编码,一般要取码长为3,则其可用编码空间为263=17576;若使用数字小键盘来编码,一般取码长为5,则其可用编码空间为105=100,000。可见其可用编码空间比前者大得多。这对国标6763个或GBK 2万余汉字来编码都是有很大冗余度的。因而取码规则可相对简单、自然的多。

从以上的分析可知,显然,用大键盘输入汉字可减少击键次数。这对专业打字人员来说较为有利。但事物都是一分为二的。使用数字小键盘,由于键位较集中,不必象大键盘那样去花几周以上时间去学指法练习,而只要边用边练就可打得较快。另外,由于小键盘数字编码所用键数减少了,只要编码规则合理,则需记忆的东西比大键盘就要少得多。以上两点说明,小键盘数字编码虽存在击键次数略多的缺点,但在易学、易记性方面却具有优势——这在普及化、大众化的汉字输入法上恰恰是最需要的。移动电话等手持设备用户往往要输入的汉字字数是较少的,因此,他们需要的正是这种易学、易记、易用而有效的编码输入法。

2          本研究课题的提出

汉字输入法在历经万“码”奔腾的繁荣局面后,能付诸实现并生存下来的其实并不多。一般认为,汉字输入法分为以音为主、以形为主和音形结合的三大类[23]。以音为主的汉字输入法虽具有一定易学、易记和易用性,但重码率太高,并不理想。以形为主的汉字输入法偏重于降低重码率,少数甚至能做到基本无重码。然而,早期研制者过分或片面地追求低重码率导致了人为因素太多而编码规则太复杂、难记、出现很多歧义,使一般人不易掌握。音形结合的汉字输入法可克服重码率高的问题,也可部分解决难记性问题,但对拼音不准的人仍望而生畏,故不可能全面取代以形为主的汉字输入法。后来虽然也出现易学性、易记性有所改善的优秀输入法,但由于它们仍沿袭将汉字拆分成部件的原则,而汉字的拆分有时是模棱两可的,所以在易用性方面并没有彻底的解决,加之老的用户因习惯了原来的输入法而不可能一下转移过来,因此这些优秀输入法并不能战胜早期已实现的一些有代表性的汉字输入法。

近来,随着移动电话的普及与大众化,市面上出现了几种以笔画为基础的汉字数字编码输入法,彻底地解决了易学、易记性问题,成为手机的热卖点之一。

例如,三星新型手机(如SGH800C系列)所提供之笔画输入法,只用五种标准笔画,按笔顺次序取字的各笔画代码;摩托罗拉新型手机(如L2000系列)所提供之笔画输入法,将汉字基本笔画组合为九种,按汉字书写的笔画顺序取码击键。这两种输入法规则都很简单,也很容易使用,普通大众一看就会。但都存在击键次数太多、或重码率太高等缺点,仍不理想。其它我们所了解到(包括检索到的发明专利)的汉字数字编码输入法,虽然在降低重码率方面有所突破,但易用性却不如以上二种,难以普及推广。

因此,我们认为,对于大众化的汉字数字编码输入法,既要规则简单明确不出现模棱两可的情况,保证易学、易记和易用性,又要重码率适当,即对降低重码率的追求要有一个科学的折中点,保证其不影响输入效率就行了,这样才易于被采纳使用又高效可行。

基于上述思想,我们研制了一种汉字输入法,称“大哥大”汉字输入法。首先将汉字的所有笔画较明确的分成8种,其次也采纳了组成汉字的少数几个高频部件,取码规则也很简单。经我们测试使用,效果相当不错。

3          “大哥大”汉字输入法

“大哥大”汉字输入法是我们新近研究成功的,可广泛应用于移动电话、小型手持设备、计算机上的具有上述特点的大众化汉字输入法。这种汉字输入法不但最适合于一般输入汉字不多的人使用,也可作为专业打字人员在遇到难字时的一个辅助输入方法。

3.1        简易编码方案

首先,将汉字的所有笔画按特征分为8类,并分别用18作为其代码。即用1代表“横”(一),用2代表“竖”(丨),用3代表“撇”( 丿),用4代表“点”(丶),用5代表“捺”(乀),用6代表“横折”(泛指所有起笔为横的“折”,如 乛、、⺄、ㄋ、乙、┐等),用7代表“竖折”(泛指所有起笔为竖的“折”,如亅、乚、ㄣ、└ 等),用8代表所有其它笔画(如ㄑ、ㄥ 等)。然后,按照汉字的笔顺次序,取每个汉字的前3笔画及末2笔画的代码,编排在一起作为该汉字的编码;当汉字的笔画数不足5时,有几笔就取几码。这样就得到一种简易编码方案。

上述编码的优点是,第一,所有的笔画都有很明确的归类,歧义少、反应快——因为我们输入笔画代码时,起笔为横或竖的折,不管其以后怎么折、怎么钩,我们均不必管,所以反应速度要快得多;第二,不必将汉字拆分为部件再去取笔画,因而规则相当简单、反应速度较快;第三,与目前普遍流行使用的“五笔画”次序(很多字典也是这个次序)兼容(前四种笔画次序一致),很容易记住。

简易编码方案对国家标准一级常用字编码后的重码统计结果如表1所示。

 

1. 国标一级常用字简易编码方案重码统计结果

 

重码对数

字数

%

累计()

累计%

无重码

 

959

25.5

959

25.5

2~4重码

458

1178

31.4

2137

56.9

5~10重码

119

812

21.6

2949

78.5

11~20重码

34

524

14.0

3473

92.5

21~30重码

8

196

5.2

3669

97.7

31~..重码

2

86

2.3

3755

100

合计

621

3755

100

 

 

 

从表1可以看出:对78.5% 的字其重码率≤10,即输入编码后只须在屏幕上选字即可;另有14% 5.2% 的字也只须翻页一、二次即可;只剩2.3% 的字须翻页四次才能找到。可见此方案是可行的,比起上述二种手机的笔画输入法,不论击键次数还是重码率均已有明显改进。

3.2       高效编码方案

由于汉字同偏旁部首者相当多,上述统计结果说明,对于少数编码,其重码率仍较高。进一步的研究表明,增加少量几个高频部件,可明显降低重码率。故本研究以兼容并存的方式,将构成汉字的高频部件“氵、艹、扌、木”分别并入上述代码5678,将构成汉字的高频部件“口”及“日、目、田”用9作为其代码。即5既代表“捺”(乀),又代表“氵”;6既代表“横折”,又代表“艹”;…。其取码规则类同上:即按照汉字的笔顺次序,取每个汉字的前3码及末2码,编排在一起作为该汉字的编码;当不足5码时,有几码就取几码。取码时,若有上述部件,则用部件代码;否则,仍用笔画代码。此方案称为“高效编码方案”。

只采用高效编码方案后的各项统计结果如表2和表3所示。

 

2. 国标一级常用字高效编码方案重码统计结果

 

重码对数

字数

%

累计()

累计%

无重码

 

1846

49.2

1846

49.2

2~4重码

532

1303

34.7

3149

83.9

5~10重码

86

552

14.7

3701

98.6

11~20重码

4

54

1.4

3755

100

合计

622

3755

100

 

 

 

3. GB2312国标汉字高效编码方案重码统计结果

 

重码对数

字数

%

累计()

累计%

无重码

 

2483

36.7

2483

36.7

2~4重码

1046

2669

39.5

5152

76.2

5~10重码

199

1276

18.9

6428

95.1

11~20重码

20

290

4.3

6718

99.4

21~30重码

2

45

0.6

6763

100

合计

1267

6763

100

 

 

 

加进上述高频部件代码以后,增加的记忆不多,却大大地降低了重码率。例如,按照国标一级常用字统计,其中99% 的字重码率≤10,不必翻页即可选字;即使扩大到连同国标二级非常用字在内的6763字来统计,也有95% 的字重码率≤10。我们还应注意这样一个事实,由于重码提示一级常用字显示在前,二级非常用字显示在后,后者的使用频度是极低的,因此对约5% 的字须翻页一至二次也不必在意。

4          实现过程中几个问题的讨论

考虑到一般人在书写汉字过程中,其笔画、笔顺并非完全符合标准,特别因受行、楷、草书等影响,早已养成了习惯,就连已出版的一些字典也有少数笔画笔顺的差异。因此,为了真正做到方便绝大多数人的使用,本汉字输入方案在按国家规定的汉字标准笔画、笔顺[45]编码的同时,将那些虽不符合标准但已为许多人所习惯了的笔画笔顺,以及取码过程中可能有歧义的编码,也制成汉字编码,称为“容错码”。

基于上述原因,这样,对一个字来说,就可能有几种编码。用户可任意使用一种来输入一个字:即既可用高效编码,也可用容错码、简易编码。区别只是重码提示时,前者显示在前,重码少,因而不受后者影响;后者显示在后,可能重码多,击键次数多。在用户选中一个非高效/标准编码的字时,通过计算机“嘟”一声的警示和提示该字的高效/标准编码,可指导用户逐渐向高效/标准编码过渡。

本方案仍适合对GBK大字符集二万余汉字及对词组(包括词、短语)进行编码。对词组的编码仍由5码组成。由于对词的编码其各键分布要比字均匀得多,所以编码空间有效利用率也大得多。相应的,其重码率也不会太高。

从上面的介绍可以看出,本汉字输入法在输入汉字过程中,只用到“1”~“9”九个数字键,且很少会出现模棱两可的歧义笔画和部件;其次,在取码过程中,对笔画的分类反应速度快,且按笔顺次序取码反应速度也快;本输入方案的附加规则少,容易学,容易记;还有,有了“容错码”,不再有难字。最后,本输入方案的重码适当,尤其在加入了少数几个高频部件以后,完全符合高效输入的要求。因此,本研究具有广泛的应用前景。

 

5           参考文献

1          王胜平.笔顺码和数字CKE技术.计算机世界,1999年第44C

2          郭平欣,张淞芝.汉字信息处理技术.国防工业出版社,1985

3          陈增武,金连甫.汉字信息处理.贵州人民出版社,1988

4          国家语言文字工作委员会标准化委员会.现代汉语通用字笔顺规范.语文出版社,1997

5          asir Dex.金山词霸Ⅲ完全版(金山公司电子版).北京大学出版社,1998

 

作者简介

陈钦梧,汕头大学计算机高级实验师。1986~1987年先后研制完成LQK及NECP3汉字打印驱动程序;19881989年研制完成“烂柯CCBIOS汉字系统”;1992年在清华大学茅于杭教授指导下完成“通用打印机高精度汉字打印程序”的研制工作;1996年为清华大学计算机组成原理教学实验仪设计“TEC-2交叉汇编、编辑、调试集成环境”软件;1995年~1997年完成汕头大学青年科学基金项目“汉语词字合一输入法设计及实现”。主要论文有:“一种BIOS扩充最有效的方法”,“中断处理程序扩充最有效的方法”