形碼設計的比較研究(二)(1 / 3)

形碼設計的比較研究(二)

3.4形碼典型方案分析

比較是為了區分優劣。既然輸入速度、重碼率、信息含量等都不能作為編碼優劣的衡量標準,那麼衡量的標準是什麼呢?我們認為標準就在於看這些編碼在何種程度上反映了漢字和編碼設計的結構規律。盡管各種形碼都在不同的側麵接近了這些規律,但對漢字規律的探索畢竟是一個長期的過程。我們擬從眾多的形碼方案中,選取部分典型方案:倉頡碼、五筆字型、鄭碼、見字識碼、大眾碼、宏觀碼、許畢碼、王碼象形碼、表形碼等,加以剖析,揚其長,棄其短,以逼近對編碼設計客觀規律的進一步認識。

一、倉頡字母

二、五筆字型

三、鄭碼“ZN”電腦漢字26鍵拆根編碼方案

四、見字識碼

五、大眾碼

六、漢字宏觀編碼

七、許畢碼和王碼象形碼

八、字根碼的突破與表形碼

3.4形碼典型方案分析

一、倉頡字母

倉頡字母把漢字部件分為24類,24個字母分為4個大類:

甲哲理類日月金木水火土

乙筆畫類丿丶十乂丨一亅

丙人身類人心手口

丁字形類屍艸山女田卜

甲、哲理類

字母    產生原則    舉例

日 ①日的變形為 巴

月 ①取月的外形成冂,冖

②月的變形為, 巾,冗

祭,胖,采

金 ①取金的分形丷

②變化而成八,兒 弟

穀,四

木 ①取木的主形

②由變化成 寸

水 ①取水之左右並重合為又

②水做偏旁時為氵 支

沿

火 ①取火字的上半形為小

②小變為

③灬做字尾時的字形 肖

土 ①土的變形為士 任

乙、筆畫類:

字母    定義    舉例

(斜) ①斜的定義為丿

②丿的變形成為廠 舌

(點) ①點的定義為丶

②點的變形成為厶、廣 之

公、廣

(交) ①交的定義為十,而其變形成為宀 宋

(叉) ①叉的定義為乂

②大的部分形成 刈

(縱) ①縱的定義為丨即由上而下

②變形為丿

③肀亦為縱向意義相近

巾、川

(橫) ①橫的定義為左右向,故工屬於輔助字形

②橫下加一撇為變形 江

(鉤) ①鉤的定義為亅

②變形成為

③再加變化成為 了

丙、人身類:

字母    產生原則    舉例

①人的變形為

②取部分形為

③偏旁為亻

④變形為 兆

①匕七皆為心字形變化

②偏旁作忄

③字尾作 尼、虎、民、句

①手之主要字形為

②變形為、

③偏旁作扌 青、夫

口    無

丁、字形類:

字母    產生原則    舉例

(側) ①側之定義為向左右開口,所以為、匚

②、為變形 尹、巨

廿

(並) ①並之定義為兩形相並所以為廾

②變形為、。 草

黃、羊

(仰) ①仰之定義為向上開口,所以為凵

②變形為、、屮 凶

巴、民

(紐)    ①紐的定義為曲紐,故為巜

②變形為、 巢

亡、衣

(方) ①方之定義為一方框,內有其它形所以為口

②變形為 國

(卜) ①卜的變形為亠、冫、二、卜

②衤為卜的類似形 言、冰

鬥、被、非

據上所述,倉頡碼的主要問題是:

一是分類零亂主觀。倉頡碼的分數係統是:幾萬個漢字,由十三個簡單的漢字、四個部首、兩個筆畫結構(十乂)、五個筆畫組成。這個係統,是怎樣組成的?發明人沒有加以任何有依據的說明,使人感到它在設計上是主觀的,在結構上是零亂的。例如“十、乂”,並不是筆畫,但設計者卻把它們擺在筆畫類裏,這顯然是不恰當的;“女”,擺在字形類裏也不合適。

七個筆畫類,不是筆畫的將近三分一,這個類名,即類的定義就難以成立。一個完整的係統,分類和命名上的客觀性和科學性是很重要的。

二是取形混亂,例如哲理類有七個小類,其中有五個類的取形就有五樣:

取月的外形成冂、冖;取金的分形丷,丷的變化而成八、兒;取木的主形;取水之左右並重合為又;取火的上半形為小。月取外形;金取分形;木取主形;水取左右並重合;火取上半形。每取一個形,即多了一個記憶單元,取與不取,沒有什麼不同,不如幹脆規定幾個就作為這個類方便。有了一個“取”字,設計者的意思是使它們之間有聯係,但這個聯係很勉強,不是唯一的。因為,規定取外形,就要撇開內形;規定取上形,就要撇開下形。這就無形中增加了記憶負擔。

三是字母定義的隨意變形。倉頡碼依據二十四個字母聯係形和義,又產生了如個小類。我們可以從上麵的字母表中看出它的隨意性來:

斜的定義為丿丿的變形為廠

點的定義為丶丶的變形為厶、廣

交的定義的十而其變形為宀

縱的定義為丨即由上而下變形為丿肀亦為縱向意義相近

橫的定義為左右向,故工屬於輔助字形,橫下加一撇為變形。

鉤的定義為亅,變形成為,再加變化成為。

從以上例子可以看出:由“丿”變為“廠”,即加上一橫,如果這個“丿”加出頭了,就會成為“”,但偏偏又不出頭,與第五類“橫下加一撇的‘原’”字頭並沒有區別。

“丶”變為“廣”,由“十”變為“宀”,實在說不通,根本無法解釋。“丶”是任何一個筆形的始點,變為某個筆形,或許可以解釋,設計者卻使它變為“廣”。“十”,如果說變為“”,也會講得通;說“冖”變為“宀”,可以說得過去,因為,兩者的命名,一為“禿寶蓋”,一為“寶蓋”,“蓋子”上多了一點。說是由“丶”變過來的,卻講不通了。

“丨”(縱)的變形為“丿”,與撇筆的形象一致。一個相同的形象分為兩類,在分類學上是難以接受的。

這些“變形”,都是十分隨意的,不合情理的。每個類有個定義是必要的,定義準確就毋須解釋。但如何變形,是需要解釋的。例如說“丶(點)”的變形為“(捺)”,如“木”的末筆在字中或字右,均為捺筆,若作為左邊旁,則變形為點筆。必須這樣解釋,不能沒有依據。盡管有個別的字母其“變形”是可以說得過去的,例如“日”的變形為“”;人的變形為“亻、”,但這是極少數。卜的變形為“亠”,還可以說得過去,但再變為“冫、二”,就無法解釋了。所謂“變形”的本意,也是為了增加相互聯係,減輕記憶負擔,但需要講得通。現在講不通,不能幫助理解,也說明這種解釋是主觀的,牽強的,不科學的,不僅不能減輕記憶負擔,還起了反作用。

四是取碼主觀隨意。分類係統的主觀性、隨意性,必然導致拆分取碼上的主觀性和隨意性。倉頡碼有許多字要一個一個規定,例如:

正確取碼錯誤取碼

王一土一十一

容十金人口戈月金人口

羊艸手金一手

九大山大弓山

乍竹屍人卜卜

屯心山十山山

言卜一一口戈一一一口

非中一卜卜卜中一中一一

這樣一個字一個字記憶,需要多少記憶量?

五是無理映射記憶困難。倉頡碼二十四個類代表通過“變形”或某種隨意的解釋,再產生1~4個字母。由於字母數量太少,結構簡單,造成取碼(即分解)的困難。例如:

妻——十中女

商——卜金月口

雨——一中月卜

函——弓山水

求——戈十水

乘——竹木中心

舟——竹月卜戈

焉——一卜中火

這些規定教人難以理解,而且每一個字都要如此規定,記憶實在太困難。

倉頡碼24小類安排在鍵符上,這種映射方法是任意的,無理的,記憶難度太大。

台灣的電腦科技和生產發展較快,一起始就進入字根碼的使用,人們一般很難發現漢字編碼的發展軌跡。也許設計者朱邦複先生已經知道一個設計方案,隻不過是紙上文章,並不那麼值錢,他幹脆讓人家無償使用。後來即使有人設計了好一點的方案,想從中賺錢,用戶自然不願意拿錢買,也就無法替換它。漢字編碼作為一種基礎設計,是要加上軟硬件技術才可作為商品走上市場。軟硬件成為編碼方案的主要支柱後,產生很大的穩固性。如果另一種設計方案在技術上、經濟上、主觀能力上不具有壓倒性優勢,就無法立足。編碼方案僅是紙上文章,與已經占領市場的方案比高低,就好比秀才造反,光靠嘴巴,永遠不能成功。倉頡碼在台灣能穩穩保住主導地位,其原因就在於此。

3.4形碼典型方案分析

二、五筆字型

五筆字型首先通過對字根的使用頻度與組字頻度的統計,挑選了199個(設計者宣布為125個,故意壓縮數字,引人上鉤,是一種商業手段,表現它的非科學性)基本字根作為建立方案的基本材料。所用的字根是漢字中獨立的結構“塊”,不是通過主觀任意的“變形”來產生的。雖然數量比倉頡碼多,但是學習者分解漢字要比倉頡碼方便。字根的產生是通過使用頻度和組字頻度統計得到的,(雖然是“優選”的,總比亂“變形”的好)也比倉頡字母有依據。

五筆字型利用1-5個數目字對應橫、豎、撇、捺、折五個筆形,再把鍵盤上的英文字母鍵符,劃為五區五位,選用一些使用頻度高的部件(稱基本字根),根據這些部件的第一、二筆的對應數字代號,分配到相應的鍵符上。如下:一丨丿

盡管五筆字型的設計者事先規定用字根的第一個筆畫的筆形代碼數字作為該字根應分到的“區”,第二個筆畫筆形代碼數字作為該字根的“位”,但具體的安排差異很大,隻有不到50%的字根符合設計方法。即是說,有50%以上的字根是無理安排的。原因是按字根的起首兩個筆形為區、位的安排方法並不符合實用要求。因為,字根的起筆以橫豎為多,點(捺)折為少,這樣的安排使字根的鍵位分配極不均勻。例如以點(或捺)為區,以豎、撇、折為位的字根,就很難找得到。這些鍵位就成為空位。許多字根以橫為區,橫或豎為位的很多。這些地方就會“根滿為患”。為了使每個鍵位上都能分配到一些字根,有的不能死板地按區、位安排,隻能無理地安排在這些空位上。這種以無理化作為代價是為了使每個鍵位得到“合理分配”,以換取降低重碼率。可以認為,由於把鍵盤上的26個英文字母鍵符,分為五區五位的設計安排在實踐中碰到了困難,設計者隻得服從現實,不得不進行修改。實踐證明了這種設計方法的不成熟性。

五筆字型利用數字的序(1.2.3.4.5)與筆形的序(橫、豎、撇、點、折)對應,又把鍵盤上的26個字母,劃為五個區五個位方式(即有理化),設計考慮仍然離不開“筆形——數字”這樣一種轉換方式,在部件與鍵符的轉換關係上,比筆形碼又多了一道“手續”。這道“手續”在人的腦子裏使字根與鍵符的對應,多拐了一道彎。筆形碼是直接采用數字鍵的,五筆字型則是用數字換區位,區位再換拉丁字母鍵,間接加間接的轉換。已經學會英文打字的人,還不能直接打字,得重新記憶區位。示意式如下:

筆形碼字根-筆畫-數字(鍵符)

五筆字型字根-筆畫-數字-區位-鍵符字母

五筆字型方案除了間接加間接的轉換毛病外,還有幾個主要缺陷:

(一)在設計思想上忽視漢字的整體性,沒有認識到選用少數基本字根涵蓋全部漢字是很困難的。因為,它的設計根本在鍵盤上,隻考慮鍵盤安排,不考慮設計原則。所以,進入實用時覺得不順手,就隨意修改事先的規定。但為了使人覺得它的易學和“科學”,還是“照本宣科”。這種實用主義手段,作為商業行為為可以的,但作為科學行為卻是不應該的。在中文電腦應用的專業時期,人們考慮的是技術性能,因此,商業手段可以行得通。因為,學的人是一些尋找職業的年輕人,記憶力好,多花一些時間學習也不要緊。但中老年就大不相同。由於文字使用和軟硬件在社會上的穩固性,在中文電腦全麵普及的時期,社會需要一種易學、符合漢字自身規律的編碼,而五筆字型的市場占領就會起很大的反作用。因為,它的社會使用慣性影響計算機應用向全社會展開,阻礙計算機全麵普及,阻礙我國信息化的進程。

(二)對部件的客觀性缺乏認識,認為漢字的字根(部件)沒有客觀標準,隻能靠設計人“精心篩選”。王永民認為:“什麼算構件(即字根),什麼不算,構件選多大合適,都因人而異,這裏的根據是設計的需要。”“字根並不像漢字那樣,有公認的標準和一定的數量。”這樣的理論,必然導致編碼方案的無限製的花樣翻新。字根沒有“公認的標準和一定的數量”,設計者要多大就多大,要多少就多少,實質是說,設計編碼不需要給它的基本材料定性定量。這樣的主張,實質是背離設計學的基本原理和原則。

(三)“精心篩選”的字根不能套拆全部漢字,有的漢字便隻能一個一個地主觀決定,增加記憶負擔。

(四)由於以上原因,基本字根就不可能排成一個體係嚴密的、完整的、統一的係統。例如王碼有一句助記詞:“王旁青頭兼五一”,即是說,把“王、、戔、五、一”都安排在1區1位。讓我們想想,這“王、、戔、五、一”五個字根之間,存在著什麼樣的聯係呢?設計者也許會說:“它們的起首都是兩個橫筆。”其一、“五”的第二個筆畫不是橫筆;其二、還有很多字根起首兩個筆畫都是橫筆的卻沒有安排到這個位置上。後來的版本對一些鍵位上的字根進行了調整,例如1區1位安排了“幹、戔、王、夫、千”。“千”的頭上是一撇,第二筆是橫,本來應放到3區1位才對。如果我們認真檢查它的八個版本,就會發覺,無論如何調整,都沒有辦法增加它的有理成分。

(五)由於拆分的主觀決定,必然背離漢字規範,損害識字教育。例如下麵一些字的拆法:

那拆分為刀二阝麵拆分為廠冂三

曲拆分為冂身拆分為丿三丿

擊拆分為二丨山其拆分為艸三八

樂拆分為小拜拆分為三十

不要說這些拆分方法在記憶上的難度,它在中小學語文識字教育上的不規範性使人無法接受。

(六)由於它對漢字字根的規範性認識不足,以致對許多漢字的拆分,采用基本字根代替的方法。如:

東七小派氵廠醜土不一小

母一凸丨一幾一聚耳又丿水凹幾冂一

段亻三幾又輿亻二車二一八

這樣的字很多,如果中小學生們都這樣去學習漢字,那麼,頭腦裏就會經常打架。

(七)為了減少重碼,五筆字型采用了“末筆識別碼”。但是,這種末筆有許多是設計者自己規定的,不是國家規定的。就是說,這種末筆是損害國家書寫統一規範的。例如根據設計者規定:

“國”的末筆為“丶”

“遠”的末筆為“乚”

“刀”的末筆為“”

“力”的末筆為“”

“九”的末筆為“”

“匕”的末筆為“乚”

“必”的末筆為“丿”

“乘”的末筆為“乚”

“戈”的末筆為“丿”

這些末筆規定都違反了國家的標準規範。

(八)除末筆識別碼外,五筆字型的漢字拆分仍然有許多地方不符合國家的語言文字規範,例如:

“冒”應拆為“冂二”,但五筆字型卻拆為“曰目”,“帽、瑁、冕”等均錯。

“象”,中間是“”,五筆字型拆為“”(稱橫日),“像、蟓、橡”等均錯。

“麩”,“”下麵是“夂”,五筆字型卻作“夕”。

“北”的左旁是豎起筆,五筆字型拆為“爿”,成了點起筆,所以,“背、褙、邶、乖、乘、剩、嵊、冀、驥、燕”等都拆錯了。

“非”的首筆是中間一豎,再寫左邊三橫,按國家規定應拆為“丨丨三三”,五筆字型卻拆為“三丨丨三”。

“燕”按規定應拆為“廿口北灬”,“口”先於“北”,五筆字型卻是“北”先於“口”。

總之,筆順、形象錯拆的很多,例如“母、毋、幽、醜、凹、凸、官、敝、及、貌、裏”等都拆錯了。而且,由於這些字又可作為偏旁,拚出另一些字,因此,一個拆錯,累及一批。“本節資料,得自雲南大學張在雲副教授的研究)。

五筆字型是數碼字根碼的典型代表,盡管已有上述八大缺陷,但比之倉頡字母,它所用的基本材料增加了,分解漢字更方便。倉頡碼雖然隻用了83個字母,但它的“變形”“取”字母,都是很隨意的,沒有任何依據。五筆字型用的199個基本字根,畢竟還有個使用頻度和組字頻度作為依據。盡管這種依據並不十分科學,有總比沒有好。因此,記憶量相對減少了。說明它在設計上比倉頡碼有一定的進展。

3.4形碼典型方案分析

三、鄭碼“ZN”電腦漢字26鍵拆根編碼方案(以下簡稱鄭碼)

實踐經驗證明,利用數目字代表字根的筆形或某些簡單的結構,再將其轉換為鍵盤符號的做法,並沒有給一般人的記憶帶來很多的好處,反而增加了拆分上的麻煩,是得不償失的工作。但是有的設計者還是覺得筆形多少總有一點用處,不願意全部丟掉,鄭碼的設計思想基礎可以作為這方麵的代表:

鄭碼選用了182個基本字根,外加21個筆畫作為編碼方案的基本單元。把182個基本字根分為50個主根和132個副根。這182個主根和副根又根據起筆筆形分為橫、豎、撇、點、折五個區,每個區中含有3——8個類不等。每個類中根據安排的順序取得一個英文鍵符為代碼。每類中有1——2個主根,其他的為副根。