§3.3编码方法研究 汉字编码按字面解释,就是“汉字‘编’为键盘上的‘码’(即键面符号)”,关键在于如何编为“码”。有人觉得别人“编”的方法还可以改一改,想出了一个“编(即映射)”的方法就工作起来,直到落实“编”字的时候,才觉得困难重重。发现某些字按这个方法“编”有问题,就挖空心思定规则,于是就产生了按字制订的规则。这些规则,大多数是解决拆分的,人们于是“发现了”拆分是汉字编码的“瓶颈”。我们在研究了这些方案之后,觉得大多数方案之所以不成熟,都是设计者把设计的起点放在映射方法上,没有全面考虑汉字编码方案的系统关系。 一、编码方法揭秘 全国的一千多种汉字编码方案,给部件编代码的方法只有四种。①用笔画加数字(或单用笔画,如郑码),如五笔字型;②用音,如见字识码;③用形,如表形码;④无理,如钱码。编码方法就是给部件类找代码(映射)的方法。 不同的拆分就会出不同的方案。如“吴”字,按形拆为“口、天”,或“口、一、大”,或“口、二、人”……还可以再拆下来。笔画越多的字,问题越复杂,变化太多了。 不同的编码的方法也可以出不同的方案:“口、天”可以编为“KT”,这是用两个部件的读音;也可以编为“KTWW”,后面两个为“吴”的读音;也可以编为“KTDD”;“D”是最后一个“大”字的读音;还可以用最后一个捺笔作代号……如果把码位再作一次改变,不是又发明了一个新编码?如规定为“WKTN”:第一位为本字读音,二三位为头两个部件读音,最后为末笔代码(读音、数字、代号等俱可),都是有规可循的。 上面说的编码方法还只用了读音。如用形亦可,也可以用形音相互结合,如果再加上数字,不同的排列组合就可以出很多很多不同的方案:“口”像“O”,“天”像“R”,“吴”的编码就成为“OR”;如拆作“口、一、大”,就编为“OYR”,“1”就等于“一”,读音为“Y”;如把读音放在前面,就成为“WOYR”;如把读音放在后面,就会成为“OYRW”。如果“一”当成数字“一”,编码就成了“O1RW”……这些变化方法,都有道理好讲 ,若再加笔画、数字,十几岁的小孩当然可以成为编码发明人,例如杜氏全息码。 陈明远先生说:“编码的规则,按我们的理解,不应该是任意制订的,而必须是一种根据‘客观规律性’建立起来的‘规定性’的条文。”⑼汉字编码的实践,实际就是寻找把一个字符集的每个汉字,编为一组代码的客观规律。人们在寻找时,常常会碰到许多困难,并在想方设法加以克服。 拆分、分类、编代码如果都可以你定你的、我定我的,人人都可以“发明”出几个来。例如把“吴”编为“ABCD”,或者“CDBA”,如何编,由设计者确定。不按照客观规律设计编码并不困难,选几个部首(或部件、字根),或干脆全部采用《新华字典》的部首,规定一个对应方法,例如用读音声母或用数字;拆分的方法:能套拆的就拆,不能拆的就拆拆笔画。在计算机上把每个汉字的代码打进去,方案就成功了。像这样与“规范码”类似的方案(如“表音码”,它早已走在“规范码”之前了)全国何止一二个?有一个方案取名为“五笔二维”,顾名思义,就可知道它与五笔字型大同小异。再让我们分析一下“双拼”:声母安排大家都不变,要变的都是韵母的安排。有的加声调,有的不加;有的用未笔作区别码,有的不用。实际是各搞一套,内容相似,基本重复。 我们把这些“发明”加以剖析,说明编码的“发明”不困难也不神秘,如果您有兴趣,明天就可以成为几个新编码的发明人,请看下表: 名 称 部 件 代码 理 由 代码 理 由 代码 理 由 横 一、 1 形义均同 1 按笔形序 Y 1的读音声母 竖 丨、 I 形状近似 2 按笔形序 1 与丨(竖)形似 撇 丿、 J 形状近似 3 按笔形序 E 与3形似 捺 N 读音声母 4 按笔形序 S 4的读音声母 点 丶 D 读音声母 5 按笔形序 W 5的读音声母 竖折 L 形状近似 6 按笔形序 L 6的读音声母 横折 乙 Z 形状近似 7 按笔形序 Q 7的读音声母 上面表中列出了七种笔形的三种编码方法。第一种是以形状近似为主,以读音为辅;第二种以笔形序代以数目字;第三种以笔形序的读音声母为主,辅以与序数形状近似的拉丁字母。这三种方法还可以相互揉合,也可以把“捺、点”“竖折、横折”合并,都可以出新的编码方法。又如表形码的1—5个数字代码,也可以变成“ABCDE”,可可以按形似和读音改为拉丁字母。以上所述的七种笔形三种代码方法就可以组合出不少的方案。我们还可以把以上部件清单中各个部件类中的某些部件重新安排,因为,有的部件有两三种特征,例如“、”,既可说是四个分离的笔画,代码为“D”;也可以说它们是两个对称相离的笔画结构块,代码为“X”。又如斜笔相交的“”类,现用“S”为代码,解释时说,“戈”的草书与“&”形似,反过来,与“S”的手写体形似。用“X”为代码,也可以说得通,因为“”是个单交叉,象“X”;如“”既可用“i”为代码,也可用“j”为代码。这些对应方法如再加上没有定数的部件(字根、部首),一个万“码”奔腾的局面自然不形而成。由是可知,鼓吹编码方法的“百花齐放”,授予编码方法以“专利发明”,只能使编码方案越来越多,导致无法遏止的编码大潮。说穿了,编码根本不是技术,不是发明,是学术界把军令弄错了。 二、代码置换方式和映射方法 狭义的编码是指如何为部件类设置代码。为部件类设置代码的优劣,主要要置换方式和映射方法。置换方式有直接和间接两种;映射方法有有理无理两类。这两者与汉字建立代码串时的反应的速度有很大的关系。如表形码使用字形对应是一种直接的置换方式,又以部件类的特征映射代码,是一种有理的编码方法,思维转换感觉就快;“五笔”用笔画换数字,数字再转换键盘符号,键符与字根(即部件)的置换方式是间接的,尽管它设置的五区五位与数字有理地对应,头脑中转弯,仍然会感觉反应的速度慢。两者相比,虽然都是有理,记忆量却大不相同。因为,表形码用的是直接置换;“五笔”用的是间接置换。 根据所有编码方案置换代码的方式方法,我们用排列组合把它们分为四类: ①直接而有理,②间接而有理,③直接而无理,④间接而无理。 第4类间接而无理的方式是不可能存在的,它不符合设计的客观要求。因为,电报码需要死记硬背的经验 已经告诉设计者,从一开始设计,就得从有理编码这个角度考虑研制方案,否则就会得到的死记硬背结果。四角号码和笔形码在接受这个经验的情况下单纯地考虑有理化了。即是说,汉字要换为有序的键符必须有理由可讲。利用数字键和笔形对应果然可以做到直接而有理,但是,这么做,不仅遇到了键盘应用效率的不佳,还碰到了汉字拆分的问题。所谓键盘应用效率是指数字键与笔形对应虽然是直接的,但因不能用两只手一起像弹钢琴一样地输入,而且数字与笔形的对应码元数太少 ,重码过多都影响了工作效率。于是,设计者只能从直接而有理这个环节上撤退,转向间接而有理,像五笔字型和郑码;加直接而无理,像大众码和钱码。这是“迂回前进”,不是倒退。 要使汉字编码具有象拼音文字这样的工作效率,首先要求编码的方式方法必须直接而有理。这是最佳的,它很难做到,但表形码做到了。其原因在于表形码系统地解决了编码的设计——从核心开始。一个新概念——笔画结构块——在字根码里诞生。陈爱文抓住了它,在解释它的同时,把部件的定量、拆分、分类,系统地解决了。 三、编码方法撷要 当代被普遍采用的编码方法有很多种,现选择几种有代表性的述评如下: (一)陈代于论编码方法 他说:“有多种编码法,这里讨论主要的三种:取与部件最象形的英文字母或数字;取部件读音声母;取部件前两笔画的代号。我们认为判定部件编码法优劣的标准至少有三条。 1.部件编码必须是根据部件自身固有的、隐含的信息制定的,二者有内在联系。否则难以记忆。…… 2.作为编码依据的部件自身固有信息必须确切,最好唯一。…… 3.编码必须易得。……读音就是基本编码,不要轻易舍‘基本码’而求他。”⑽ (二)陈爱文论编码方法 他认为:“对于汉字编码的评测标准,已经提出了一系列指标——输入速度,重码率学习班时间,误码率,……我们看来,最重要的一条标准应该是通用范围的大小。汉字编码必须具备全面的通用性,可以适用于全部汉字(简体和繁体),可以适用于一切用途(电脑、字典、电报及其他)。” “设计字形编码,没有必要完全摒弃字音信息。” “好的编码方案应该把这种负担(指编码的学习)转化为学汉字的助力。学编码的过程,就是学会分解字形的过程,可以帮助学生掌握汉字的拼形规律,防止写错字。例如‘擅’,许多人把它的右下角写成‘且’。如果知道它是由‘扌、亠、囗、口、日、一’等部件构成的,就可以防止这个错误了。”⑾ (三)纯化论 有的专家认为编码的方法有音托和形托,用音的就应该统统用音,用形的就要统统用形。这个提法,实际是把手段当作目的。编码的目的是使汉字转换为代码,用什么方法并不重要,重要的是它使学习的人记忆方便不方便。有的人批评表形码,说表形码大部分都用形转换,但却有少数几个用音转换。造成使用者无所适从。好象编码的目的不是为了好学好记,而是为了音托或形托的纯化。我们认为,纯化当然是好,但键盘上的拉丁字母不是按汉字部件类的特征造出来的,无法也不能强求。把部件分为类,这个类中的部件,它们的基本特征是不是一致,它们的代码是不是可以解释(即有理化),这是最主要的。把“木”解释为三条腿与“M”形似,或解释“木”的声母为“M”,这里有一个权衡问题。因为,用“三条腿”来解释是很勉强的,不利于认知心理上的接受;用读音来解释却是有利记忆的,强求形托的纯度对记忆并无好处。 (四)音优论 有的专家认为用音映射自然;用形映射有的很像,有的则过于牵强。利用形象上的近似性作为,映射方法比之用音托有一定的优势。因为,字形不受方言的局限,也不受时间局限。搞拼音码或音形码的人总强调音托比形托好,不知道全国知识界年龄大的这个层次,有很多人未学过拉丁字母的汉语拼音读法。有的人认为由于软件技术的进步,全拼输入已不再有速度上的问题了。这种想法之一是以为将来大家都讲普通话,用拼音输入自然毫无问题;其二将来大家都用计算机了,我们就不需要专业输入。其实,这个想法的缺陷有三: 1.尽管将来大家都能使用计算机输入中文,但不可能没有专业输入员就如大家都能用笔写字,但仍旧需要速记员一样。不过我们希望专业输入和一般输入都能使用相同的方法,以便于“从娃娃抓起”。 2.客观发展已经可以看出,计算机的换代是按年计算的,在这五年里,它一连升了四级,说明其技术提高之快,如果我们不紧跟,就将很快落后;又因都价格的幅度,每年平均以15%递减,说明每年将有更多的家庭买得起计算机(主要是用于中文输入)。因此,它的普及速度不可能等待拼音化的实现。这是拼音化的时间局限。 3.形码发展到表形码这个阶段,已经可以证明它有拼音码不可替代的巨大优势。一天或几小时即可学会掌握汉字字形序性已完全实现,因此,让它进入中小学基础教育,帮助识字;进入社会,实现统一排序已可以提到议事日程上来了。具体理由可见笔者上述论述。 (五)形音结合优势论 有人认为音码、形码各有优势,形音码取两者所长,就好比“骡”,取了驴和马的所长:吃苦耐劳力气大。然而,论者却忽略了形音码天生的缺陷: 1.汉字的单音节性使汉字由声母和韵母共同拼合,它决定了一些韵母无法得到合理的安排。但是为了击键分配均匀以及减少重码率,必须给予一定的数量,这些安排只能无理化,因而会增加记忆量。例如表音码(沈克成)就有六组部首共16个不能按读音进入键位,只能作无理安排。 2.一般人只能念二三千之的读音,即使是国标一级字库的字也还有不识的,如果输入时要查字典那就很麻烦;不会王码使用拼音的识字人群也同样有很多麻烦;同时因读音了码位,余下的码个无法完全反映被分解的字形信息。 因此,认为形音码兼有形码和音码的优势是错误的,事实证明它兼有两者不能克服的缺陷才是真的。 (六)有理化的异议 把部件按形的特征归于一类,如本部件清单的直式多交叉类,特征是“中间一竖,两头穿通,至少有两个以上横笔交叉的”。这26个部件的总特征是两横一竖,以英文字母的“F”作代码。“F”当然不是两横一竖的交叉,但授课时进行这样的解释来帮助记忆,并不是牵强附会。有的专家认为表形码用“S”代表双竖字架类是杜撰臆测。我们认为,为部件类的取代码,进行有联系的解释,不应要求数学上的一对一。形象有很相似的,也会有稍相似的,不可能绝对一样,毕竟只是“相似”,而不是“相同”。只要是直接对应的,用音用形都可斟酌。例如我们把双竖交叉类用“S”作代码,解释时说这象个“ ”,抽掉两个竖笔即是“S”;也可把“H”作代码,解释时则说这一类都有两个竖笔。这种代码方法称之为有理化,即它们的联系有道理可以解释。至于用什么好,要作全面的分析。在一个编码系统中,部件类的代码方法,用形、用音各有优劣,可以用统计记忆量的方法进行比较,决定取舍,不要依凭主观判断;用“S”或“H”,可以对它们进行记忆所需的记忆量,分类系统的整体性,分类的方法科学性,和部件结构的一致性,进行有依据的分析,而编码优劣标准不外于直接性、易学易记、系统性等三个方面。 四、编码方法与部件的分类 (一)部件分类与编码方法 几百个部件,如何构成几个型和类,以便于记忆,这是部件分类的第一个目的;几百个部件如何成为几十个类,使之与键盘上的有序符号对应,这是编码的第二个目的。前者称为分类,后者称为编码(即映射)。可见两者既是相互独立的,又是不可截然分开的。对“编码”这一概念可作广义和狭义的解释。广义的编码包含三个部分:其一是要把汉字拆开,成为拼拆自如的文字;其二是要使它排成线性行列;其三是要使它有序性,即能拼、线性、有序。狭义的编码即是指分类的第二个效用:如何使部件类与键符对应。部件不是一个一个地与键符对应,而需要通过分类与键符挂上钩。由此可知,分类与编码(映射)是一个问题的两个方面。分类有两层意思:一是离散部件,把几百个部件分为几个大类——五笔字型称为区,表形码称为型;二是使这个大类中的部件,根据某种规则集合为小类,与有序的键符对应,取得序性。即是说,它们既要按照一定的方法离散,又要根据某种规定集合。分类系统乃是编码系统里的一个子系统。设计思想上不成熟,为分类而分类,忽视分类的系统性,就会使分类方法缺乏心理上的现实性依据。例如以下几种方法: 1、用笔画 用部件的始二笔,或单用始笔。这种归类方式是有依据的,但是由于汉字笔画书写顺序大多数都由横、竖为始,会产生严重的不均匀性。徐火辉先生说:“按照单笔画原理,作为部件归类的基本方式,是可取的。它具备心理现实性依据。但单笔画归类法,技术上效率太低。”这里说的“可取”,只是说它作为部件的分类方式的可取,不是说作为编码方案中分类方式的“可取”。由于把部件先拆为笔画,用笔形取得代码,是一种间接反应,所以说它的“技术上效率太低”。正是这个原因,笔形码才发展为字根码的。 2、用读音 读音归类问题出在没有读音的部件上,即这种归类方式缺乏现实性的依据,有很大的随意性。徐火辉先生说:“按照发音归类原理,作为部件归类的基本方式,一般是不妥当的。它缺乏心理现实性依据。并且有可能混淆汉字编码中两个不同的映射过程。”我们认为,发音归类之所以不妥当,是因为一个类中的部件,存在着多种打同的音,用一音以统之是不妥当的,这等于取消了其他部件的读音。所以说这种做法“缺乏心理现实性依据”。因此,许多音形码干脆取消了分类这个环节。音形码有这样一种系统的缺陷,有的人才说它是一种非驴非马的产物。 3、拼字集合 把毫无规律的部件,组合为一个结构匀称的生造字。这个方式,实际是利用中国人对汉字的认知心理,减轻记忆负担。但这种方式缺乏客观依据,因此,可导出任意种拼字方式。 (二)部件形态的近似性与编码方法 徐火辉先生说:“按照形态近似性原理,作为部件归类的基本方式,是合理的,有大量的心理实验数据和常识事实的支持。……应当按汉字部件自身的形态特点进行归类。”(12)我们认为,一个类中的部件,用一种形态特征分类,当然是“合理的”。但是,分类与配置代码是部件分类中两个不同的工作,既相对独立,又相辅相成。例如表形码的离聚型中,用2、3、4、5给笔画数相同的部件分类;在相接型中用“竖W型”将“、幺、纟、、了、弓”归为一类,都是很可取的。不应认为这是归类中的两个“映射过程相互混淆”。所谓“形态近似”,即模糊相似之意,既可用于分型,也可用于分类。 由此可见,最佳的映射过程是按照部件自身形态的特点进行归类。表形码之所以成功,正是按照自身笔画结构的特点,进行分型之后,再按形态近似性的特点集合,使之具有相同的特点归类,并按其特征与键盘符号的近似性实现映射(即编码)。而分类与编码是两个不同的工作程序:分类是部件的集合(或离散)方法;编码是部件类与键符的转换方法,两者不可混淆。 从笔笔码到字根码,部件的分类与编码缠在一起,难解难分,它标志着编码的不成熟。例如五笔字型,当设计者确定按区、位(即每个部件的第一、二笔笔形),取得对应键符的时候,也就是确定了它们的字根分类方法了。而成熟了的部件码,却是先根据部件特征进行集合,而后再“自由”选择适当的键符代码。因而使它的键符对应,既直接,又有理。 (三)部件分类的模糊性与编码方法 由于汉字部件结构的复杂性,按结构分型是为了离散部件;按特征分类,是为了集合部件。离散与集合相辅相成,组成了编码方案下的子系统。如果不理解这种相互辅助、制约的内部联系,而把它看成互不相关的“两个不同的映射过程”(13),就会陷入为分类而分类的陷阱。具体地说,对分型、分类,都不能要求过细。例如“ ”,不能说它是相交又相接;“广”,不能说是相离加相接;“主、 ”,不能说它是相交、相接加相离。因为,它们不仅要分到一种相近的“型”里去,还要分到“类”中。“型”分得太细,就会影响分“类”。例如把“厂、广、疒、 ”,它们的主体特征都是“厂”,而“厂”属于相接结构,就说它们是相接型。再如“讠、、礻、衤、主、 ”,它们的主体特征是一点一竖,属于相离结构,就称为相离型。这样的分类,大型粗放模糊,以主体特征作为依据,就会照顾到小类,使部件离散均匀一些。我们把拼形字母系统的分类称之为模糊集合,就是说,要模糊一些,不能太严,太细。因为从古代的象形独体,到现代的部件,形象已经完全不同。拿自然科学的方法给部件分类是行不通的。只有模糊,才有利于应用的现实。 |