商相之后:86 版五笔之知其所以然
86 版五笔之知其所以然
商相之后 商相之后 2016 年 06 月 07 日 11:25
86 版五笔之知其所以然
商相之后(孤独的牧羊人) 著
二〇一六年五月二十日修订
前言
随着五笔输入法的普及,以及它“高出字率、低重码率”的特点,这一优秀的输入法变得越来越流行。学好五笔输入法,不仅是提高打字速度的需要,更是学习字型结构和汉字书写的需要。因此,学习五笔输入法可以说是计算机操作人员(包括文员、文秘)的一项基本技能。
本书立足于学习的实际,并且根据笔者多年学五笔、打五笔、用五笔的丰富经验编写而出,可以说是集众家之所长,集理论于一书,集经验于精华。
本书适用于有一定基础的五笔学习人员,希望本书对你有用。
代为序。
目录¶
- 第一章 概述
- 第二章 字根
- 字根口诀
- 字根分布详解
- 第三章 键名汉字和一级简码
- 键名汉字
- 一级简码
- 第四章 合体字
- 拆字的规律和原则
- 合体字的编码规则
- 第五章 成字字根
- 编码规则
- 成字字根举例
- 不成字字根的编码规则
- 第六章 识别码
- 为什么要用到识别码
- 识别码的编码规则
- 特殊的识别码
- 第七章 两个难点
- 难拆字
- 容错码和无理码
- 第八章 词语的录入
- 双字词的录入
- 三字词的录入
- 四字词和多字词的录入
- 一级简码汉字在词语里的编码
- 第九章 杂记和结束语
第一章 概述¶
汉字是一种象形文字,是不同于像英语这样的拼音文字的。这些字,可能发音相同,比如同音字,但是字型一定不同。在设计汉字输入法的时候,有人直接使用汉字的拼音作为编码,这种输入法属于音码输入法,也有人根据汉字形状和笔划来编码,这叫形码输入法。可想而知,因为同音字的存在,音码输入法很难克服重码的问题,同时由于拼音有固定的拼写规则,字母间的排列组合顺序有限。而形码输入法是根据汉字形状和笔划来编码的,如果能将汉字笔划均匀地分布在 26 个字母上,就可以平衡每个字母的使用频率,再加上一点小小的调整,就可以很好地解决重码的问题,这样的一套输入法一定可以大大提高汉字的录入速度。
五笔输入法就是在这样的条件下诞生的。1986 年,王永民先生推荐了他的第一款五笔输入法,史称 86 版王码五笔输入法。我们的学习,就从这里开始。
第二章 字根¶
在宋体字和楷体字里,汉字只有横竖撇捺折五种笔划,如果一笔一划地写,那么,笔划多的字就要敲上十几键甚至二十几键,这无疑是很不科学的。聪明的方法是将一个字分成几部分来写,这个“部分”在王永民先生的 86 版五笔里叫做字根,顾名思义,就是组成汉字的根本。那么,汉字里的哪些“部分”被规定为字根呢。根据长期书写和对汉字结构的解读,发现像三点水、木字旁这样的部首,和“”、“冖”、“冂”这样的笔划组合经常是固定出现的。于是,在 86 版五笔中,王永民先生精选了 100 多个字根,所有的汉字都可以用这些字根组合出来。这就是字根在五笔输入法中的重要地位。
第一节 字根口诀¶
为了方便记忆,五笔字根有以下口诀(助记词)
1、横区
2、竖区
3、撇区
4、捺区
5、折区
第二节 字根分布详解¶
字根根据首笔的不同,分为横竖撇捺折五个区,每个区又根据第二笔的不同,大致分为横竖撇捺折五个位。如图 2-1。
学五笔要牢记“横竖撇捺折就是12345”。
1、横区〈1 区〉¶
- G〈1 位〉:王旁青头戋五一
王、、戋
:1 笔横〈1〉,2 笔横〈1〉,所以在 G〈11〉上。一
:单笔一横,在横区〈1〉第 1 位上,所以在 G〈11〉上。- 特例:
五
(字形与“王”相近)
- F〈2 位〉:(先横后竖)土士二干十寸雨
土、士、干、十、寸、雨
:1 笔横〈1〉,2 笔竖〈2〉,所以在 F〈12〉上。二
:两横,所以在第 2 位上
- D〈3 位〉:(先横后撇)大犬三羊古石厂
- 道理同上,特例:
古
(字形与“石”相近)。另有“厂”的变体“丆”和“”。
- 道理同上,特例:
- S〈4 位〉:木丁西
- 1 区 4 位,应该是先横后捺,但是字根里没有这样的笔划组合,所以 S 键不遵循这一规则,
- 而是把三个横起笔的常见字根放在此键上,其中,木字旁的字很多,“木”字也就成了 S 键的键名汉字。
- A〈5 位〉:(先横后折)工戈草头右框七
- 其中“戈”、“匚”和“七”符合先横后折的规则,
- “工”本应放在 F 键上(先横后竖),但是,早在五笔设计之初,王永民先生就发现,如果将“工”字安排在 F 键上,会出现很多重码字,如“攻〈AT〉”和“才〈FT〉”,又如“功〈AL〉”和“协〈FL〉”等等。所以,为了减少重码字,特别将“工”安排在 A 键上。
- 草头(艹)同理。
2、竖区〈2 区〉¶
因为形状为方框的字根很多,如果按照先竖后折(囗、田等)的规则都排列在第 5 位的 M 键上,必然产生很多重码,所以,竖区的五个键上,字根的排列是很有规则的。比如,键名汉字,HJKLM分别是目、日、口、田和山,前面四个都是方框,方框里面依次是两个减号(目)、一个减号(日)、没有减号(口)和一个加号(田),M键上的都是竖起笔的半框,如冂、贝、山等,另外,再加一个冂的变体--“几”。
- H〈1 位〉:目具上止卜虎皮
- 其中“具”只有上半部分,是“目”的变体;
- 上和止都是先竖后横,符合规则;卜是上的变体;虎的上部也是先竖后横,皮的上部是它的变体,所以在 H 键上。
- 同时,作为 1 位键,单笔划的一竖也在 H 键上。
- J〈2 位〉:日早两竖与虫依
- “早”是“日”的衍生,两竖是因为 H 键是竖区 2 位。
- 两竖同时派生出“刂”和“师”字的左边部分。
- 特别记忆:
虫
。
- K〈3 位〉:口与川,字根稀
- “川”是三个竖,所以在 3 位上。
- L〈4 位〉:田甲方框四车力
- 田和甲形状相似,在同一个键上。
- 方框指的是国字框,与口字不同,这一点很好地表现了汉字的结构,国字框里是要有其它笔划的,如团、圆、国、围等,同时,在拆字的时候,国字框是一个整体,不受笔顺的约束,不是先写一个下框再写中间的部分再写一横,而是一次成形,这既保留了方框的意义,也缩短了对文字的编码。
- 必须要说的是,车和力是两个特别的字根,是为了减少重码才打破规则跨区安排的。如果实在不好记的话,可以想象“车”的繁体字“車”和“田”、“甲”相似,“力”的声母是 L,所以在 L 键上。
- M〈5 位〉:山由贝骨下框几
- “山”字本身符合先竖后折的规则,而且使用频率较高,所以被安排为键名汉字。
- 由和山的大体形状相近,也被安排在 M 键上。
- 剩下的“冂”也同样符合先竖后折的规则,它的变体“几”也被安排在这个键上。
3、撇区〈3 区〉¶
基本上都符合先撇后 X 的规则,如禾〈31〉、竹〈31〉、白〈32〉、彡〈33〉、人〈34〉、儿〈35〉、夕〈35〉。当然,由于撇笔本身是左向笔划(向左书写的笔划),所以以撇起笔的字根较多,不规则的字根也比其它区的字根多,如彳〈31〉和金〈35〉等。
- T〈1 位〉:(先撇后横)禾竹反文双人立
- 禾和竹都是先撇后横,
- 双人旁是为了减少重码特别安排的。
- R〈2 位〉:白斤看头手边提
- “白”是先撇后竖,所以是键名汉字。
- 手是一撇加两横。
- 斤是两撇,又如“盾〈RFH〉”字的前两笔,也是 R。
- 口诀中的“白斤反文手边提”,分别指白、斤、、手和扌。
- E〈3 位〉:月舟乃用家衣底
- 分开来看,一是月、乃、用形状相近。二是按照一二三规则,三撇应该在 E 键上,即“彡”。
- 而“家、蒙、涿、啄”的公共部分,以及“豹、貌、豿、豺”的左下部分,都算作“家”字底。
- 而衣、哀、袁、表、襄、丧的下部都算作“衣”字底,其中,“丧”字的下部并不是撇起笔,但是因为形状相近,所以归在撇区里,同样的,还有“良”和“狼”的最后三笔(注意与朗、郎、勆等字不同)。
- “舟”字去掉一撇的下面部分也在E键上,算作“月”的变体。
- W〈4 位〉:人八登祭把头取
- “人”字很容易产生它的变体单人旁“亻”。
- “八”和“人”是相近的写法,所以放在一起,
-
而“入”字是不一样的。“入”字一定是拆成一撇一捺。
- 注意“八〈W〉”是先撇后捺,和“丷〈U〉”是不一样的。
- Q〈5 位〉:金夕乂儿包头鱼
很多人对我说 Q 键上的字根不好记,其实 Q 键是最符合先撇后折规则的。除了键名字“金”以外,像“鱼”少一横、“儿”、“勹”(变体“”)、“夕”、“犭”少后一撇、氏和留(或贸)的前两笔,都是先撇后折的。
撇区在整体上还符合一二三规则,如丿〈31〉、扬的最后两撇〈32〉、彡〈33〉。一二三规则也同样适用于其它区,如横区的一〈11〉、二〈12〉、三〈13〉,竖区的丨〈21〉、刂〈22〉、川〈23〉。
4、捺区(点区)〈4 区〉¶
捺区也是很符合一二三规则的,对比来看:丶〈41〉、冫〈42〉、氵〈43〉、灬〈44〉,甚至还符合一二三四的规则。
同时,亠〈41〉、丬〈42〉、冖〈45〉、之〈45〉还符合先点后 X 的规则。
- Y〈1 位〉:言文方广谁人去
- 言、文、方、广都是点横起笔(先点后横),“在四一”就是在四区一位上。
- 高头,即一点一横一个口。
- “谁人去”,则是指“谁”字的右边部分,同样的还有难〈CWY〉、滩〈ICWY〉、傩〈WCWY〉、摊〈RCWY〉等等。
- U〈2 位〉:立辛两点六门病
- 立、辛和六形状相近,而且,虽然都是点横起笔,但是最大的特点还是两个点,
- “疒”比“广”多两点,所以也算在点区的第二位里。
- 而“门”字呢,则是完全符合先点〈4〉后竖〈2〉的规则,在 U〈42〉键上。
- I〈3 位〉:水旁兴头小倒立
- 最大的特点就是三点,不管是兴头还是小的变体,都是三点。比如党、学、江、河等。
-
注意“党”字上面是小倒立,“学”字上面是兴字头,打字的时候都一样是 I〈43〉,但是我们不能因此忘了用手写字时应当注意的笔划不同。
- O〈4 位〉:火业头,四点米
- 火、业、米、灬,最大的特点都是四点。
- “业”字的上半部分是什么,其实也是四点,只不过是宋体字和楷体字为了书写好看,把中间两个点写成了竖,同样的还有:亦、变、弯、赤等。
-
五笔变体虽多,其实都是很好联想的,这也告诉我们,学习五笔,特别是字根,不可死板,不可抬扛,要充分联想、灵活运用,才能真正学好五笔。
- P〈5 位〉:之字宝盖摘示衣
- “之”和“冖”都符合先点后折的规则。
- 建字底和之字底、宝盖(宀)和秃宝盖(冖)有相近的形状,所以放在一起。可以认为是变体,也可以认为是相近。
- 摘示衣,是指衫、衬的衣字旁摘去两点,社、礼的示字旁摘去一点后,相同的部分。这样的设计,第一是为了强调两上部首的不同,第二也是为了减少重码字的出现。摘去点后,打字的时候要分别补上一点〈Y〉和两点〈U〉,就可以把字区别开来,如果不摘去它们的点,那么就都是一样的编码了,如:
- 摘点前:社〈PYF〉、衬〈PUF〉;
- 摘点后:社〈PF〉、衬〈PF〉、守〈PF〉; 重码
- 摘点前:祀〈PYN〉、袂〈PUN〉
- 摘点后:祀〈PN〉、袂〈PN〉、官〈PN〉; 重码
5、折区〈5 区〉¶
- N〈1 位〉:已类左框折心尸羽
- 因为是 5 区,所以首笔是折,因为是 1 位,所以除了单笔划的折以外,第二笔是横,已、己、巳、左框、尸都符合这一规则,特例只有心和羽。
- 其中,“心”的变体很容易联想到有竖心旁(如“性”、“情”等),以及“慕”〈AJDN〉的下部,只不过“心”字的卧钩变成了竖钩。爱慕、羡慕是心理活动,所以很容易记住“慕”的下部是心字底,而不是“小”。
- B〈2 位〉:子耳了也框向上
- 5 区 2 位,先折〈5〉后竖〈2〉(竖钩“亅”算竖,但是竖提算折),子、了、也、凵都符合这条规则,
- 耳是因为“卩”和“阝”都是先折后竖,所以才在 B 键上。
- 同时 B 键有“卩”的变体“”和双折“巜”。
- V〈3 位〉:女刀九臼山朝西
- 5 区 3 位,先折〈5〉后撇〈3〉。女、刀、九都符合这条规则,
- 臼和“山朝西”(雪的下部)是特例。
- 同时 V 键还有三折“巛”,如“巢”〈VJS〉。
- C〈4 位〉:又巴马,丢矢矣
- 5 区 4 位,先折〈5〉后点〈4〉。又、厶、 都符合这条规则。
- 巴和马都是折起笔,为了减少重码,安排在 C 键上。
- X〈5 位〉:幺母无心弓和匕
- 5 区 5 位,连续折笔。如幺、纟、母字框等都符合这条规则。
- 弓和匕,是两个特例,放在 X 键上是为了减少重码。
第三章 键名汉字和一级简码¶
为了提高五笔输入速度,五笔字形输入法里专门规定了一些高频字(使用频率很高的字)和常用字的输入方法,通过简化编码和简化记忆的方法,使我们的输入更准确也更快捷。
第一节 键名汉字¶
口诀是“键名汉字打四下”,说的就是键名汉字的输入方法,同一个键,敲四下就可以打出它的键名汉字。那么,哪些是键名汉字呢?通过对大量文档的统计,王永民先生(怎么啥事都是他一个人搞)选出了 25 个常用字,并且大致按照它们的起笔安排在对应的区上。这些字就是每个键的字根口诀里第一个字,其中X键是例外。
所属区 | |||||
---|---|---|---|---|---|
横 | 王 | 土 | 大 | 木 | 工 |
G | F | D | S | A | |
竖 | 目 | 日 | 口 | 田 | 山 |
H | J | K | L | M | |
撇 | 禾 | 白 | 月 | 人 | 金 |
T | R | E | W | Q | |
捺 | 言 | 立 | 水 | 火 | 之 |
Y | U | I | O | P | |
折 | 已 | 子 | 女 | 又 | 纟 |
N | B | V | C | X |
第二节 一级简码¶
键名汉字的编码是为了记忆的方便,只要记住了口诀的第一个字,就能输入这个字。而另一种方便,则是击键的方便,这些字用给比常用字使用频率更高的字,它们就是高频字。这些字的编码应该最简单,而最简单的编码当然就是输入一个字母就出的字。五笔里把这样的 25 个字叫做一级简码,如下:
横 | 一〈G〉 | 地〈F〉 | 在〈D〉 | 要〈S〉 | 工〈A〉 |
竖 | 上〈H〉 | 是〈J〉 | 中〈K〉 | 国〈L〉 | 同〈M〉 |
撇 | 和〈T〉 | 的〈R〉 | 有〈E〉 | 人〈W〉 | 我〈Q〉 |
捺 | 主〈Y〉 | 产〈U〉 | 不〈I〉 | 为〈O〉 | 这〈P〉 |
折 | 民〈N〉 | 了〈B〉 | 发〈V〉 | 以〈C〉 | 经〈X〉 |
大部分一级简码的首笔划和所在大区一致,其它的字有主要字根或者第二字根在该键上,如:
另外, - 发〈V〉
的前两笔符合先折后撇的规则, - 为〈O〉
字在点区第四键上是因为“为”的繁体字“為”有四个点,而且这个字使用频率很高,作为合体字也不方便拆分,故特别安排在 O 键上。 - “我”
字也是特别安排的,只有首笔划符合。
第四章 合体字¶
五笔输入法里涉及最多的字就是合体字了。所谓合体字,就是由两个以上的字根组成的字。这一类字,很容易想到按照书写顺序依次找出各个字根,比如1:
军〈PL〉 = 冖〈P〉 + 车〈L〉
归〈JV〉 = 刂〈J〉 + 彐〈V〉
找〈RA〉 = 扌〈R〉 + 戈〈A〉
现〈GMq〉 = 王〈G〉 + 冂〈M〉 + 儿〈Q〉
照〈JVKO〉= 日〈J〉 + 刀〈V〉 + 口〈K〉 + 灬〈O〉
第一节 拆字的规律和原则¶
把一个合体字拆成几个字根叫做拆字。
拆字的规律就是汉字的书写习惯。
拆字的原则是:从左到右、从上到下、能连不交、能散不连、兼顾直观、从大优先。合体字的字根基本上是按照汉字的结构和笔顺来确定的。
从左到右、从上到下:有的五笔书籍上也概括为“书写顺序”,笔者觉得“书写顺序”更确切,因为尽管大部分汉字的书写顺序是从左到右从上到下,但是,像“边”、“建”等半包围结构汉字和像“国”、“田”等全包围结构汉字,我们不好将其笔划描述为“从左到右”或“从上到下”。
从大优先:也叫“能大不小”。在五笔字形的 100 多个字根里,有的字根是其他两个或者更多个字根的组合,这时候就要用到从大优先原则。比如 Y〈41〉键上有一个字根,上面是一点一横,下面是一个口,而 Y〈41〉键上有一点一横,K〈23〉键有一个口,在拆“高”字时,按照从大优先原则,应该把上部的“点横口”看成一个部分,下框看成一个部分,“口”看成一部分,而不应该再把“点横口”分开成两部分。从大优先原则是为了尽可能少地拆分汉字,用最少数量的字根对描述一个字,可以进行更简短的编码,从而提高出字率。关于“出字率”请参见本书第九章。
能连不交:五笔字型里,在遵循“从左到右、从上到下、兼顾直观”的基础上,拆字总是从字形结构看起来最“薄弱”的地方拆开。比如“天”字,拆为“一”和“大”时笔划相连,如果拆为“二”和“人”则笔划相交,所以:
而对于“夫”字,因为不管你拆成“一”和“大”还是“二”和“人”,都是笔划相交的情况,所以,为了避免和“天”字重码,“夫”字拆为“二”和“人”:
根据“夫”字的这种拆法,相应地有:
能散不连:与“能连不交”类似。通常情况下能看到字根之间“散”的关系,是不会用“连”的那种拆法去拆的。
兼顾直观:从字根结构上讲,根据“兼顾直观”原则,我们会很自然地将“国”的外框看作一个字根,而像“边”、“建”等有之字底和建字底的字,其笔顺总是先内后外。这也许和某些语文老师讲的不一样,不过五笔里的确是这样按照汉字书写规则来规定。对于“国”字,很显然是一个大框〈L〉+王〈G〉+丶〈Y〉,而不会死板地根据笔顺拆成“冂+王+丶+一”。
第二节 合体字的编码规则¶
合体字的编码,简单地讲,就是各个字根编码的总和。根据王永民先生对字键比和重码率的统计和研究,最终确定五笔字型里使用最多四位编码可以很好地提高字键比并降低重码率。编码太长,字键比太小;编码太短,重码率太高。所以,不仅词语为四码,单个汉字最多也只有四码。简单的情况是,一个汉字拆成四个字根,那么,只需要依次键入这四个字根的编码即可,对于不足四个字根的,直接用空格确认即可。
不过,合体字也可能拆成多于四个部分,这时怎么对汉字进行编码呢?经过对汉字结构的研究和对大量字根的统计发现,对于四个以上字根的汉字,取第 1、2、3 和末字根四个编码可以很好地提高字键比。如:
实际编码只有第 1、2、3 和末字根,即:
又如:
实际编码:
本章节所讲的“合体字”不是单纯字形结构上的合体字,而是指拆分成字根来录入的字。这样的“合体字”可能从字形结构上讲是独体字,如:州〈YTYH〉、长〈TA〉。
第五章 成字字根¶
第一节 编码规则¶
成字字根的编码规则是:
第二节 成字字根举例¶
其中的“竹”字就是一个成字字根,它不可以再用合体字的规则来套用录入,而是要先报户口(所在键),再输入首笔单笔划的键(一〈G〉、丨〈H〉、丿〈T〉、丶〈Y〉、乙〈N〉)和第二笔单笔划的键,最后输入全字末笔的单笔划的键。
又如:(小写字母表示不必输入已经出字)
雨〈FGHY〉 = 雨〈F〉 + 一〈G〉 + 丨〈H〉 + 丶〈Y〉
文〈YYGY〉 = 文〈Y〉 + 丶〈Y〉 + 一〈G〉 + 丶〈Y〉
米〈OYty〉 = 米〈O〉 + 丶〈Y〉 + 丿〈T〉 + 丶〈Y〉
马〈CNng〉 = 马〈C〉 + 〈N〉 + 乙〈N〉 + 一〈G〉
巴〈CNHn〉 = 巴〈C〉 + 〈N〉 + 丨〈H〉 + 乚〈N〉
甲〈LHNH〉 = 甲〈L〉 + 丨〈H〉 + 〈N〉 + 丨〈H〉
对于只有两笔的字,不足四个编码,按以下编码:
极少数成字字根为了避免重码而有特殊的规定:
第三节 不成字字根的输入¶
一些五笔输入法支持输入不成字字根,这类字根的编码规则与成字字根相同。如:
丷〈UYT〉 = 丷〈U〉 + 丶〈Y〉 + 丿〈T〉
〈CNY〉 = 〈C〉 + 乛〈N〉 + 丶〈Y〉
〈DGT〉 = 〈D〉 + 一〈G〉 + 丿〈T〉
刂〈JHH〉 = 刂〈J〉 + 丨〈H〉 + 丨〈H〉
凵〈BNH〉 = 凵〈B〉 + 乚〈N〉 + 丨〈H〉
灬〈OYYy〉= 灬〈O〉 + 丶〈Y〉 + 丶〈Y〉 + 丶〈Y〉
极点五笔输入法 6.5 版支持不成字字根的输入,这对五笔教学中要用到这类字根很有帮助。
第六章 识别码¶
第一节 为什么要用到识别码¶
所有的输入法都不可避免存在重码字,所以,减少重码就是提高输入法质量的重要手段。五笔字型通过引入识别码,大大减少了重码字的出现,并由此加深了五笔使用人员对汉字结构和笔划的认识。
所以,这个问题的答案就是:为了减少重码。
第二节 识别码的编码规则¶
五笔在引入识别码之前,是很容易出现重码字的,如:
又如:
汉字本身只拆分成两个字根,也就意味着只用了两个编码,这就为我们添加一个根据汉字本身来识别于重码字的编码提供了可能。
通过观察我们可以发现,“旭”和“旮”虽然字根相同,但是字形结构不同,“宁”和“宋”虽然字形相近、结构相同,但是下半部分笔划特点不同。五笔字型形成之初也曾尝试过用字形结构加首笔划的方法,但是在实际使用中发现,加首笔划常常不管用,比如上面的“宁”和“宋”,因为编码相同,如果要找编码为 P 的那个字根,它的首笔一定(多半)是点,对编码为 S 的那个字根来说呢,它的首笔一定(多半)是横,这是由于字根所在大区所决定的。可是整体汉字的末笔是很“随机”,一个汉字的末笔和它任一个字根的首笔都是不相关的,比如“宁”和“宋”(或者看“丁”和“木”),末笔,一个是竖(竖钩算竖),一个是捺,于是,就可以产生一个下面这样的表来确定一个字的识别码:
左右〈1〉 | 上下〈2〉 | 杂合〈3〉 | |
---|---|---|---|
横〈1〉 | G〈11〉 | F〈12〉 | D〈13〉 |
竖〈2〉 | H〈21〉 | J〈22〉 | K〈23〉 |
撇〈3〉 | T〈31〉 | R〈32〉 | E〈33〉 |
捺〈4〉 | Y〈41〉 | U〈42〉 | I〈43〉 |
折〈5〉 | N〈51〉 | B〈52〉 | V〈53〉 |
对于一个不足四码的合体字来说,末笔是横〈1〉,结构是左右结构〈1〉,就加上一个编码 G〈11〉作为识别码。
全〈WGf〉 = 人〈W〉 + 王〈G〉 + 12〈F〉 末笔横,上下结构
伍〈WGG〉 = 亻〈W〉 + 五〈G〉 + 11〈G〉 末笔横,左右结构
宁〈PSj〉 = 宀〈P〉 + 丁〈S〉 + 22〈J〉 末笔竖,上下结构
宋〈PSU〉 = 宀〈P〉 + 木〈S〉 + 42〈U〉 末笔捺,上下结构
时〈JFy〉 = 日〈J〉 + 寸〈F〉 + 41〈Y〉 点(4)/左右(1)
里〈JFD〉 = 日〈J〉 + 寸〈F〉 + 13〈D〉 横(1)/杂合(3)
第三节 识别码的特殊情况¶
识别码的编码是根据汉字的字形和末笔来认定的。
但是有的字,末笔容易确定,字形结构并不明显,像“千”,有的人说是上下结构,有的人说是杂合结构(独体字),那么,对于这类字的识别码,五笔规定按照以下原则来认定:
1、对于像“千”、“灭”这样的“上面只有一笔、下面只有一个字根的字”,一律算作杂合结构。
以“千”为例,对比“午”:
“午”字虽然是独体字,但是它不是“上面只有一笔”,因为“”是一个字根,所以算作是上下结构。
“灭”字是明显的“上面只有一笔、下面只有一个字根的字。
辨析:“严”字的编码是〈GODr〉,拆分如下。
识别码是 32〈R〉,区号 3 代表末笔是撇,位号 2 代表文字结构是上下结构。“严”字不算作杂合结构,是因为这个字虽然是“上面只有一笔”,但是本身具有明显的上下结构,不是独体字。
识别码是根据末笔和字形结构来确定的,如果有这么一类字,它的末笔和字形结构都是一样的,那么,识别码就不能“识别”这些字了,比如,“边”和“连”的字根编码都是 LP,末笔都是之字底的捺,又都是杂合结构(半包围),识别码就都应该是 43〈I〉,这个识别码“I”对于所有的之字底的字都是一样的,这样的话就失去了它的作用。所以,对于这些字,五笔字型有专门的规定:
2、对于“辶”(之字底)的字,识别码在认定末笔时,以之字底里面部分的末笔为准。
“力”的最后一笔是折,“车”的最后一笔是竖,所以:
与“辶”同理,带国字框“囗”的字,末笔总是“囗”的最后一横,结构总是杂合,如果不作特殊规定的话,这类字的识别码总是 13〈D〉。
3、对于“囗”(国字框)的字,识别码在认定末笔时,以方框里面部分的末笔为准,即以最后一个字根的末笔为准。
以全字末笔为准时:
而识别码的末笔是指最后一个字根的末笔:
4、对于含有“戈”部且末笔争议为该“戈”部点和撇的汉字(最后一个字根为“戈”),识别码在认定末笔时,一律认作是撇。
理由 1:“戈”字根的笔顺本身有两种公认的情况,一是:横、斜钩、撇、点;二是:横、斜钩、点、撇。
理由 2:以撇为末笔的字极少,为了平衡编码和减少重码,在有理由 1 的基础上,末笔确定为撇,可以平衡识别码分布。
理由:末字根为“车”,识别码取末笔为竖,而不取“戈”部的撇。
第七章 两个难点¶
第一节 难拆字¶
举例说明如下:
凸〈HGMg〉 = 丨〈H〉 + 一〈G〉 + 几〈M〉 + 一〈G〉
凹〈MMGD〉 = 冂〈M〉 + 冂〈M〉 + 一〈G〉 + 13〈D〉
钧〈QQUG〉 = 钅〈Q〉 + 勹〈Q〉 + 冫〈U〉 + 11〈G〉
“钧”字末笔是横,因为两点中的提是从左下向右上的笔划,所以算作横。
第二节 容错码和无理码¶
容错码有两个意思,一是容许打错的码,二是容易打错的码。有的字,因为个人书写习惯的不同,会有不同的拆字情况,比如:
长〈TAyi〉=丿〈T〉 + 七〈A〉 + 丶〈Y〉 + 43〈I〉 正确码
长〈ATYI〉=七〈A〉 + 丿〈T〉 + 丶〈Y〉 + 43〈I〉 容错码
长〈TNTY〉=丿〈T〉 + 乚〈N〉 + 丿〈T〉 + 丶〈Y〉 容错码
又如:
必须要指出的是,是否允许在输入法中设置容错码,哪些字有容错码,完全依各款五笔输入法程序而定。像笔者使用的极点五笔输入法,就没有上述两个容错码。
另外,还有为了避免重码而特别将某些不常用的字的最后一码改成特殊编码 24〈L〉的,由于是强行修改的,没有什么道理,所以也叫无理码。
改成 24〈L〉而不改成其他编码的原因是:在所有汉字的编码中,24〈L〉在第四位的编码是极少的,而且右手无名指不用移动就可以直接按下该键。
不成字字根中的单笔划:
单笔划 户口 首笔 无理码 无理码
一〈GGLL〉 = 一〈G〉 + 一〈G〉 + 24〈L〉 + 24〈L〉
丨〈HHLL〉 = 丨〈H〉 + 丨〈H〉 + 24〈L〉 + 24〈L〉
丿〈TTLL〉 = 丿〈T〉 + 丿〈T〉 + 24〈L〉 + 24〈L〉
丶〈YYLL〉 = 丶〈Y〉 + 丶〈Y〉 + 24〈L〉 + 24〈L〉
乙〈NNLL〉 = 乙〈N〉 + 乙〈N〉 + 24〈L〉 + 24〈L〉
避免与特别常用的字和特别常用的词语造成重码:
劳动〈APFC〉 = 艹〈A〉 + 冖〈P〉 + 二〈F〉 + 厶〈C〉
蔻 〈APFC〉 = 艹〈A〉 + 宀〈P〉 + 二〈F〉 + 又〈C〉
蔻 〈APFL〉 = 艹〈A〉 + 宀〈P〉 + 二〈F〉 + 24〈L〉
王永民先生认为“劳动”一词比“蔻”字常用得多,所以把正确编码 APFC 留给“劳动”一词使用,而把“蔻”字的最后一码无理由地改成了 24〈L〉。
以下三组字中第二个字的 24〈L〉都是容错码:
靥〈DDDL〉=厂〈D〉+犬〈D〉+丆〈D〉+24〈L〉,最后一码本应为“三〈D〉”;
去〈FCU〉 ,云〈FCUL〉;
喜〈FKUK〉,嘉〈FKUL〉;
风〈MQI〉 ,冈〈MQIL〉。
有的输入法里没有容错码。
第八章 词语的录入¶
第一节 双字词的录入¶
依次录入两个字的前两码即可:
第二节 三字词的录入¶
录入前两字的第一码和第三字的一、二码即可:
第三节 四字词和多字词的录入¶
录入第一、二、三个字和末字的第一码即可:
五笔字型〈GTPG〉=五〈G〉+〈T〉+宀〈P〉+一〈G〉
资本主义〈USYY〉=冫〈U〉+木〈S〉+丶〈Y〉+丶〈Y〉
中国共产党〈KLAI〉=口〈K〉+囗〈L〉+〈A〉+〈I〉
马克思主义〈CDLY〉=马〈C〉+古〈D〉+田〈L〉+丶〈Y〉
中华人民共和国〈KWWL〉=口〈K〉+亻〈W〉+人〈W〉+囗〈L〉
第四节 一级简码汉字在词语里的编码¶
有些一级简码汉字具有特殊的编码,比如“我”和“发”字,特别地赋其编码为Q和V,但是,双字词语的编码规则是取两字的前两码,那么,对于像“我们”这样的词语,第一个字的前两码是什么呢?这就是这一节要讲的问题:一级简码在词语里的编码。
对于这样的情况,我们应该把这些一级简码汉字看作是合体字,并取其作为合体字时编码的前两位(或前一位),例如:
所以:
同理:
所以:
第九章 杂记和结束语¶
- 〈出字率〉:也叫字键比,即出字数除以击键数得到的比值。出字率的高低是判断一个输入法是否好用的重要标志,同样重要的另一个标志是重码率。一种输入法的出字率越高、重码率越低,这个输入法就越好用。
- 〈重码率〉:输完一个汉字的编码时出现重码字的机率。可以想象,如果有一种输入法(比如拼音),每次在输完一个字的编码后都有重码字出现,那么我们就必须去用数字键选择,甚至用一次或多次翻页键来查找。所以重码率太高的输入法很难提高汉字录入速度。
五笔字型输入法里,单个汉字的编码最多为 4 码,加之有一级简码、二级简码,而且,在五笔里,对于词语,无论字数多少,编码一律为 4 码。关于“为什么单字最长为 4 码,词语全部为 4 码”,我们可以计算一下:25 个字母的 4 次排列组合结果为 \(25*25*25*25=390625\),足以包含全部汉字和大量词语了。如果只有 3 码,则只有 \(25*25*25=15625\) 种组合,只能显示常用汉字。而 5 码的话,则有 \(390625*25=9765625\),多加了一码,难以拆字、编码和记忆,没有必要。字键比举例:
- 一级简码为 1.00,二级简码为 0.50,
- 三级简码约为 0.33,全码字为 0.25;
- 二字词(团结〈LFXF〉)为 0.50,
- 三字词(三角形〈DQGA〉)为 0.75,
- 四字词(社会主义〈PWYY〉,资本主义〈USYY〉)为 1.00,
- 五字词(中国共产党〈KLAI〉,为人民服务〈YWNT〉)为 1.25,
- 七字词(中华人民共和国〈KWWL〉)为 1.75。
而全拼输入法,键字比相当低:
- 啊〈A〉:1/1=1.00 八〈BA〉:½=0.50
- 三〈SAN〉:⅓≈0.33 身〈SHEN〉:¼=0.25
- 上〈SHANG〉、长〈CHANG〉:⅕=0.20
- 庄〈ZHUANG〉、双〈SHUANG〉:⅙≈0.17
而且,五笔字型将高频字设为一级简码,大部分常用字都设为了二级简码,换言之,一般来说,越常用的字编码越短,也极大提高了出字率,比如:双〈CC〉(0.50)、上〈H〉(1.00)、长〈TA〉(0.50)。并且,对于词语,因为总是 4 码,所以一个词语里的字数越多,字键比越“占便宜”。
而全拼输入法里,因为自身原因限制,无法缩短常用字的编码,比如:双(0.17)、上(0.20)、长(0.20)。而且,其字键比也不会因为是词语而占到半点便宜。双拼输入法与全拼不同,它的字键比约为 0.50。
学五笔绝不是单纯的背记字根,它更丰富的内涵在于对汉字结构和笔划的理解和运用。作为一种优秀的汉字输入法,五笔字形具有以下特点:字键比高,重码率低,常用字编码短,字根分配科学,各键使用频率平均。
学好五笔,不仅能提高我们的打字速度,更重要的是,五笔使用熟练之后不易出现音码输入法学习人员易出现的“提笔忘字”现象。因为,用音码打字,是说出来的,用形码打字,是写出来的。不仅如此,五笔输入法还有利于我们对生僻汉字笔划的认识,有的字在我们长期的学习当中已经形成了一种自认为正确的写法,而这些字平时又不经常用到,往往到了某个时候,要用五笔打这个字的时候,才发现怎么拆字都不对,细细一看,才知道是自己平时的写法就与众不同。比如,“尴尬”这两个字,很多人以为就是“九+监”和“九+介”。对单个笔划和一些常见字根的认识,也会因为学习五笔而得到加深,比如点算捺,提算横,竖钩算竖,竖提算折,还有像“八”和“丷”的区别等等……
祝你早日学好五笔,希望本书对你有用。
-
小写字母表示不必输入已经出字,全书类同。 ↩