仓颉系统
汉字检索的问题
更多资料:汉字检索
现时汉字的检索,在绝大多数地区都是以读音顺序为主。例如:
日本的汉字检索,以五十音顺序而排列,
韩国的汉字,以韩语字母顺序排列,
中国的汉字,以汉语拼音顺序排列。
汉字检索的最大难题,是不管用什么方法来实行,都要面对重码的问题。
仓颉系统方案
朱邦复在发展仓颉输入法时,原意是要发展“中文检字法”,使汉字具有“序位观念”,使中文能像拼音文字一般,用少数字母找到所有汉字。仓颉输入法的26个字码“日月金木水火土…卜”,其实正如同拉丁字母的26个字母“ABCDE…XYZ”、日本语的五十音序等,是有序的排列,可用于检索汉字,是以称作“仓颉字母”。
事后他进一步扩充系统,提出汉字基因理论。由于字根都依汉字形声字特性分析得来,故若在电脑上运用这套方法,将有以下六大用途:
仓颉系统即是将上列六大要素综合考虑而发展出的电脑系统。
所解决的问题
仓颉系统可解决下列各种问题:
字序问题
汉字字典依“部首”、“笔划”检索没有效率,兼没“序位”观念,若以仓颉码排序汉字,则汉字的字序分明,人类或计算机程序查找汉字将方便快速许多。没有大五码和统一码字序混乱的缺点。
缺字和存储问题
电脑系统会有缺字问题,除了汉字的编码和查对旷日费时以外,字集的存储空间也是一大考量因素。目前主流的轮廓字体中,Times New Roman约占400KB,收字不足1,500;新细明体和细明体共约8.6MB,收字不到23,000字;标楷体约5.1MB,收字亦不到23,000。相较于拼音文字,由于汉字所需的存储空间庞大,许多小型的电子仪器不是无法收入汉字,就是缺字严重,如电子辞典、手机、各式医疗电子仪器等等。
由于仓颉码有前缀、字身的消息,汉字字形产生器可根据输入的仓颉码,把字根自动组合为字形,无需把每个字的字形逐一存储,大大减少所需记忆空间。由于输入输出统一以仓颉处理,取码与输出字形相符。
朱邦复在1995年开发的“汉字字形产生器”是依输入的仓颉码组合成字。该系统本身收录了已存在约六万古今汉字(前缀约六百,字身约一万);并且可根据仓颉组字规则类推,依已有的前缀、字身组合出“新字”近一千万。此系统共占160KB,在处理器速度450兆赫的电脑上,每秒可产生及显示16×16之字体46,000个。字体有明、黑、圆、宋、楷、隶等,并且能任意变化大小、笔划粗细、笔划填充。与当今字集相较,其效率相当惊人。
编码问题
一般的字集编码缺少扩充空间,新字只能加在不同的字面上,不同字面间的汉字排序非常混乱。朱邦复曾批评统一码处理汉字方法愚昧、收字不全、字序混乱、码长不等,认为不能采用。
仓颉系统采用一个字4字节(byte)固定码长的编码策略,一字共5个仓颉码(少于此数则补空码),一码占5比特(26个仓颉码、5个重复字处理码,加上空码共32个,即2的5次方),再加上数个辨识码组成。由于本身留下大量的编码空间,足够随时添加汉字至指定的编码位置(但实务上,若有重码则需另外处理),不同的字形对应的仓颉码也不同,不会有相异字形兼并为同一内码而带来麻烦。
输入问题
由于汉字表意特性强而表音特性弱,很多字没有明确的“标准读音”,或者标准读音常常变化;大多数的罕用字读音也很难被了解,因此音码无法全面解决汉字输入问题。此外,汉字同音字多,音码输入如果用于较大的字集,选字将严重影响效率。
朱邦复认为,中文输入必须要能够处理所有的汉字,因此编码时根据前缀、字身份析,以求仓颉码能反映汉字的组合特征。他同时也极力避免重码,这主要是为了编码和排序考量。相对而言,其他形码输入法主要着眼于易学易用及快速,仅针对常用字进行编码,对罕用字处理较粗糙,不是无法输入就是重码率高。
实际应用
朱邦复依仓颉系统的概念,设计出以下几套系统:
聚珍集成操作系统
聚珍集成操作系统于1989年推出市场,使用第五代仓颉,提供匹配汉字结构的字数百万,有七万为实际用字,整个系统连同各种程序只占450KB。因此,当系统发售时,一个A4纸长宽、十厘米高的盒子里,主要是使用手册,而整个系统只占用一片软盘片。即使是当时市面上功能最差的个人电脑,亦可以顺畅地运行。
人文系统
“人文系统”是一套于1999年起发展的非操作系统,且不对外发售。其为建构在MS-DOS上的软件系统,并由两项系统组成:
具图文功能的“图文系统”;
汉字处理功能的“仓颉系统”。
此系统是首套使用第六代仓颉(又称苍颉)的系统。由于有字序,即使数据库巨大,查寻速度仍然很快。灵活的字库,也让生僻字能如常处理。仓颉系统的优点得到发挥。
这套系统现时有北京的栾贵明教授用来建构其收录中国历代文献的,成品为汉文史数据库。
明珠中文系统
脱胎自聚珍中文系统,含明珠中文小字库。
理解系统
理解系统是仓颉系统的一部分。该系统将汉字使用4字节的固定长度编码,其中有1个“分类字符”,1个“区别字符”,和2个“定义字符”。采用固定长度编码的目的是为了能够快速方便地检索。
如此一来,32个比特便能表达无数多种的汉字字义,空间和时间效率都很高。举例来说,若要判断“逃”是否属于“生存类”,比对前3个比特是否等于110即可。
仓颉系统系采用汇编语言写成,可针对输入的文句产生联想推理的“概念网络”,根据这些对汉字的定义编码进行高速的复杂运算,进而理解一段中文的意思。
图文系统
图文系统是理解系统的其中一种应用,该系统可以理解一段输入的中文文本,全自动产生一段动画。只须事先绘制必要的对象模型,以及设置数个基本的运镜参数即可。
朱邦复项目使用这个系统量产中文动画,以发扬中国文化。
示例:【记承天寺夜游】动画、剧本
仓颉码延伸的应用
形体相近的汉字的判断与汉字学习
将汉字的构造细分为主要成分,作为代表汉字的另一种内码,已经有许多相关研究。延伸仓颉码拆解汉字的精神,但是不采用仓颉输入法因限制一个汉字最多五码的限制而进行的省略动作,以比较详实的仓颉码来代表汉字的细部结构,进而比较汉字的近似程度。搭配汉字发音相同与相近的相关信息,基于汉字形体与发音近似的程度,可以猜测中文学习者的错字,作为学习汉字的辅助工具。
对仓颉系统的批评
一些人对仓颉系统做出以下的批评:
仓颉为了考虑按键的分配和重码率,不得不破坏汉字的理据拆分(如将“门”拆成“日弓”,但之间没有文字学的联系)。迁就了键盘,但失去了部件的教学和检字功能。
仓颉输入码在有理论上的极限值,32自乘5次。如果碰到新字,就必须回头修改仓颉系统的数据库,如果有重码,还要试图化解。还没换新版的仓颉之前,新字无法立刻呈现。
仓颉码只是字形的“特征取样”,舍弃了很多信息,往往造成例外和重码,使程序变得极为复杂而难以推广。
免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

- 有价值
- 一般般
- 没价值








24小时热门
推荐阅读



关于我们

APP下载


{{item.time}} {{item.replyListShow ? '收起' : '展开'}}评论 {{curReplyId == item.id ? '取消回复' : '回复'}}