漢字編碼輸入法

漢字編碼輸入法

漢字編碼輸入法是採用漢字的音或形來組織編碼,編碼過程必須遵守國家有關漢字鍵盤輸入規範要求及國家漢字相關規定,才能研製出具有實際使用價值的漢字輸入法產品。

基本介紹

  • 中文名:漢字編碼輸入法
  • 外文名:Chinese character encoding input method
  • 所屬學科:IT
  • 套用領域:程式設計
簡介,分類,第一代漢字編碼輸入法,第二代漢字編碼輸入法,第三代漢字編碼輸入法,數字鍵盤編碼輸入法,通用輸入法平台,漢字編碼輸入評測,易學性,易用性,快速性,規範性,質量屬性之間的關係,

簡介

1974年8月,我國開始了第一個大型漢字信息處理工程項目“748工程”,其主要成果之一是《漢字頻度表》,首先為漢字信息處理提供了重要的基礎數據。1980年前後,陳明遠、盛諫等人分別公布漢語音節、聲母、韻母、聲調和字母頻度統計。經過對《漢字頻度表》和其它字表的統計分析,國家標準總局頒布了漢字信息處理領域的第一個國家標準《信息交換用漢字編碼字元集·基本集》(GB2312-80)。這是一個在中國的漢字信息處理歷史上劃時代的、具有深遠影響的標準。
1981年,武漢大學、復旦大學等公布了在《新華字典》字集範圍內的字根頻度統計結果。1984年,國家文字改革委員會與武漢大學公布了《辭海》字集範圍內漢字筆畫、部件、結構的動態統計分析結果。1985年,國家文字改革委員會與山西大學公布了人名姓氏用字的抽樣統計分析結果。1986年,北京航空學院、新華社利用計算機技術分別公布了基於大型語料庫的新的漢字使用頻度統計和流通頻度統計。1985年後,北京師範大學、上海交通大學、北京語言學院等分別使用各具特色的自動分詞技術公布了基於大型語料庫的現代漢語詞語使用頻度統計。北京大學計算語言研究所還建立了以漢語語法為中心的“現代漢語語法信息詞典”。字詞屬性庫和內容全面、翔實、使用方便的漢語語料庫對推動漢字編碼鍵盤輸入技術的發展起到了重大作用。
九十年代後公布的與漢字鍵盤輸入系統有關的國家標準有GB13000.1《信息技術多八位編碼字元(UCS)》、GB18030《信息技術信息交換用漢字編碼字元集基本集的擴充》、GB18031《信息技術數字鍵盤漢字輸入通用要求》、GB15834《標點符號用法》和即將公布的有GB/T18220-2000《信息技術通用鍵盤漢字輸入通用要求》。國家語委頒布的規範有GF3001《信息處理GB13000.1字元漢字部件規範》、GF3002《GB13000.1字元集漢字筆順規範》、GF3003《信息處理用漢語拼音方案表示規範通用鍵盤》。

分類

最常見的分類法是按編碼時使用的特徵信息元(或稱字元)將漢字編碼輸入法分為音碼、形碼、音形碼和形音碼。音碼又可以細分為全拼碼、雙拼碼、簡拼碼。形碼又可以細分為部件碼和筆畫碼。部件碼需要將漢字拆分為部件或字根,再將它們通過音托、位托、形托等方式映射到鍵盤字元。音形碼以音為主以形為輔。形音碼以形為主以音為輔。另外,按處理對象大小來分,漢字編碼輸入法有單字型、字詞型和語句型;按適用的輸入者來分,漢字編碼輸入法可以分為普及型與專業型;按編碼時使用的碼元字元來分,漢字編碼輸入法可以分為字母碼和數字碼;按軟體的適應性來分,漢字編碼輸入法可以分為通用輸入法平台(又稱碼錶輸入法)和專用輸入法(或稱定製輸入法);按使用的鍵盤來分,漢字編碼輸入法可以分為通用鍵盤輸入法和數字鍵盤輸入法。最後,還可以按照漢字編碼輸入的發展歷程將其分代。目前,分代方法並沒有形成共識。漢字編碼輸入法究竟分為幾代?每一代的特徵是什麼?這些問題都有不同的看法。吳越將漢字編碼輸入法分為三代。其斷代標誌為:第一代,以單音節的字為單位輸入;第二代,以詞語(包括單音節和多音節)為單位輸入;第三代,除了有固定詞庫可以用通用詞輸入外,還可以根據用戶的需要自造詞語,並具有人工智慧,可以自動選擇區分重碼(同音)詞。單波也將漢字編碼分為三代,但是各代的特徵與吳越所描述的大不一樣。
按歷史發展進程把漢字編碼輸入法分為三代,各代的特徵與單波和吳越描述的都不一樣,在具體論述時會加以說明。

第一代漢字編碼輸入法

電子工業部第六所於1983年正式公布了我國第一個中文磁碟作業系統CC-DOS,這在我國中文信息處理歷史上具有劃時代的意義。CC-DOS是在PC-DOS的基礎上擴充、修改而成。在廣泛使用的CC-DOS2.1版中,有簡拼、首尾碼、快速碼和區位碼輸入法,已經涵蓋了包括音碼、形碼、音形碼和數字碼這些主要類型的輸入法,對我國計算機套用的普及起到了開路先鋒的作用。
當時使用得最廣泛的輸入法是簡拼和首尾碼。簡拼是純音碼,使用的是介於全拼和雙拼之間的一種拼音方法,對三個及三個字母以上的韻母進行了壓縮。首尾碼是一種純形碼,包含97個部件,分為52類;部件到鍵盤字母的映射沒有太多的規律可循,記憶量很大;編碼時只取字首和字尾各一個部件,對於未列出的變形部件需要輸入者自己去猜測其應歸屬的鍵位。這兩種方法都不支持聯想,也不支持詞組,都有很多重碼。因此,在輸入時選擇、翻頁操作很頻繁,眼睛需要不斷地掃描提示行以便在眾多的重碼中找尋所需的字,輸得又累又慢,更不可能實現盲打。快速碼是通過壓縮拼音和加碼方法實現的,可以在一定的程度上離散重碼。由於快速碼的加碼方法沒有規律可循,因此沒有得到真正的套用。區位碼完全要靠死記6763個漢字和符號的數字編碼來輸入,因此除了用於輸入當時還沒有其它辦法輸入的標點符號外,基本上沒有人實際使用。
另一個早期的漢字編碼輸入法是電報碼。電報碼為4位等長碼方案,使用的碼字從0000到9999,可以代表一萬個字元(包括漢字、字母、符號)。電報碼沒有重碼,但編碼的規律性不強,十分難記。因此,它完全是為了郵電部門那些已經熟悉電報碼的人的需要而移植進計算機的,對一般的漢字輸入者沒有什麼意義。1986年,聯想集團在推出聯想漢卡的同時推出了聯想式漢字環境,首先使用了聯想方法來加快漢字的輸入。那時還沒有詞組輸入方法,聯想技術讓人耳目一新。漢字輸入過程由原來的編碼->翻頁->選擇->編碼...變成了編碼->選擇->選擇...,因此稍後的很多輸入法都採用了這種技術。不過,按照現代漢字編碼輸入技術的標準來看,聯想技術仍然存在兩個致命的弱點。一個弱點是,如果後續要輸入的字與前面已輸入的字不能構成詞組的話,則聯想就會失敗。另一個弱點是,聯想選擇時人機互動過於頻繁,雖然平均碼長縮短了,但是實際的輸入速度反而會下降。
總之,第一代漢字編碼輸入法的特點是:在DOS環境下,以單字為單位進行輸入,在螢幕底部提供專門的提示行顯示數量眾多的重碼字,翻頁、選擇操作頻繁;用數字鍵選擇重碼字,用ALT+數字鍵可重複選擇出現在提示行中的重碼字;連極為常用的標點符號的輸入都需要使用區位碼,很不方便;聯想技術的採用使輸入效率有所改善,但其作用是相當有限的;各種輸入法間的切換(包括切換到英文)都是通過複合功能鍵ALT+Fn(F1-F12)來進行的;支持全形和半角方式,但不支持中文標點方式;不支持詞組輸入,更不支持自定義詞組。

第二代漢字編碼輸入法

1986年,四通公司與日本三井物業合作,推出了四通MS-2400中文電子打字機,宣告了中國專業電子打字時代的到來。隨著四通打字機的廣泛使用,首先捆綁在四通打字機上的五筆字型輸入法流傳開來,後來捆綁到四通打字機上的由劉衛民發明的雙音輸入法也在當時得到比較廣泛的使用。五筆字型是最典型的純形碼部件類方案。在五筆字型中,一般將部件稱為字根。
五筆字型採用了130個基本字根。基本字根按起筆分為五類,對應通用鍵盤上的五個區。每類又細分為五組,每組對應一個鍵盤字母。在一個漢字中,字根間的關係被歸納為“單、散、連、交”四種。在漢字拆分時,遵循“取大優先,兼顧直觀,能連不交,能散不連”的原則。五筆字型將漢字分為鍵名漢字、成字字根漢字和鍵外漢字三種,分別服從不同的編碼規則。另外,字的編碼還有一、二、三級簡碼,其形成方法是取相應全碼的前一、二、三個字母。五筆字型將詞組也分為二字詞、三字詞和多字詞三種。二字詞按順序取各字的前兩個字根來編碼。三字詞按順序取頭兩個字的第一個字根和末字的前二個字根來編碼。多字詞按順序取第一、二、三、末字的第一個字根來編碼。
五筆字型以非常複雜的編碼規則換來了在GB2312-80字元集內較低的重碼率。當採用強制簡碼時,還可進一步將低重碼率。詞組編碼被放進全碼字的剩餘編碼空間中,實現了字詞混合編碼。只要收錄的詞組量不大,發生重碼的可能性是比較小的。一般的五筆字型不具備自造詞的功能。五筆字型擁有的這些特點,正好適應了職業打字的需要,成為它在職業打字時代非常流行的重要原因之一。雖然五筆字型在市場上取得了巨大的成功,但它存在的問題也是不容忽視的。首先,五筆字型是非常難學的,而且容易遺忘。它除了有非常複雜的編碼規則而外,還有很多例外需要記憶。五筆字型打字員在打字時對一些常見字出現“卡殼”的現象是很普遍的事情。這時就需要臨時換用拼音輸入法。其次,五筆字型的擴展性差。當字元集從GB2312-80到GBK和GB18030過渡時,當詞組量增大時,五筆字型在碼長為4的碼位上會出現大量的重碼,使其喪失重碼率低的優勢。五筆字型採用的是4碼無重碼自動上屏的策略,4碼重碼增多就迫使打字員的視線更多地離開稿件來觀察提示行以確認自己的輸入,從而降低錄入速度。最後,五筆字型最致命的弱點是規範性差。張孝存等就此提出了言辭激烈的批評:“五筆字型違反語言文字規範。它對漢字的拆分具有相當大的隨意性,對國民基礎文化素質具有不可忽視的負面影響。它對規範的漢字教育的衝擊同其套用範圍的擴大成正比。”
雙音輸入法是一種比較巧妙的純音碼。雙音輸入法最大的特點就是“以詞定字、反向聯想”,以緩解純音碼方式下單字重碼過多的問題。因為二字詞的數量很多,所以一般情況下總可以找到某個二字詞,它的第一個字就是你想要輸入的字。如果該二字詞處於提示行的第一候選位置,則可以省略選擇鍵;否則需要用數字鍵進行選擇。如果整個二字詞都是你需要的,你可以加一個空格鍵輸入第二個字。也就是說,如果採用雙拼的話,利用“以詞定字”技術可以使得常用字輸入時的平均擊鍵數為2.5,而且基本上避免了傳統拼音+聯想方式下過多地掃視提示行和翻頁、選擇的毛病。在雙音輸入法中,對於三字詞和四字詞,取各字的聲母作為編碼來輸入,必要時加空格結束。對於不認識的字,可以打入“\\”調用“手寫模擬”。雖然可以自定義詞組,但它不支持線上造詞。造詞時需要用外部文本編輯器按照它定義的格式輸入編碼和對應的詞組。
雙音輸入法是拼音漢字輸入歷史上的一大進步,在當時受到了許多非職業打字員的歡迎。但是,它也存在一些比較嚴重的不足,以至於現在幾乎沒有人再使用它了。首先,雖然在輸入效率上它較傳統的拼音有很大的提升,但是它與後來的語句級拼音輸入法如智慧型ABC相比,還有相當的差距。另外,“以詞定字”時很多字可以採用多個詞來確定,而有的字難以找到詞來確定,用戶常常感到不知所措。雖然雙音輸入法中提供了很多其它的方法來解決單字的錄入問題。例如,鄧、郭、姚等姓氏用字的輸入就有6條輔助規則。要記住這些方法並判斷何時採用何種方法可不是一件容易的事情。由於只能離線造詞,所以詞組的自定義也很不方便。自然碼是最具代表性的音形碼。吳越在1993年對自然碼作出了極高的評價。自然碼在拼音部分採用了在CCDOS簡拼的基礎上修改而來的雙拼,以方便CCDOS用戶向自然碼過渡。
為了解決拼音輸入中普遍存在的同音字問題,自然碼採用了與雙音輸入法完全不同的策略。它通過在雙拼後附加形碼,大大減少了單字的重碼。其形碼部分採用“近義部首分類”法,最多可有兩碼,用部首讀音的聲母作代碼,取碼時堅持“義部優先”的原則,以便減少記憶量和增加形碼對重碼字的離散能力。採用附加的形碼來區分同音字還可以避免雙音輸入法中一個字可以利用多個詞組來確定的不確定性。對於不認識的字,可以單純使用形碼部分輸入,但需要以“/”鍵開頭進行引導。自然碼的簡碼字也很有特色,除了傳統上用“聲母+空格”輸入的高頻簡碼字而外,還有用“聲母+;”輸入的次級簡碼字和用“聲母+’”輸入的附加簡碼字。自然碼還設定了用“聲母+聲母+’”輸入的簡碼二字詞,以加快高頻二字詞的錄入。輸入一般的二字詞時,詞組作為一個整體上屏,比雙音輸入法的“以詞定字”每輸入一個二字詞就少用了一個空格鍵。三字詞用各字的聲母+“’”輸入,單獨享有編碼空間。
自然碼還設計了“中文標點狀態”,使得常用標點符號的輸入和半角字母、數字的輸入可以不加切換地進行。自然碼的外掛技術使得它可以不加改變地掛接於所有常見的中文DOS系統上。考慮到南方人國語不準的現實,自然碼還提供了南方音選項。自然碼還對中文數字、日期、時間、制表符等提供了編碼式的快速輸入手段;對字詞的疊加操作也相當方便,可以用於輸入“想想”、“思考思考”、“試一試”等。智慧型相關處理是自然碼宣傳得很多的一項技術。它實際上是一種擴展的聯想技術,即把聯想用到了詞組與詞組之間。例如,輸入“知名”以後再輸入“rfui”(標準拼音為“renshi”)後會把“人士”作為默認選擇,而輸入“不久”以後再輸入“rfui”則會把“人事”作為默認選擇。線上造詞是自然碼自譽的另一特色。在漢字輸入過程中,如果敲完某個詞的拼音以後發現這個詞不存在,立即敲空格鍵,系統便進入“自動加詞狀態”;這時,連續輸入的字、詞都作為新詞的內容,在送到螢幕上的同時便被紀錄到自造詞庫中;當再敲空格鍵或回車鍵時,系統結束自造詞操作。如果新造詞的編碼正好與其他詞的編碼重複,這時就要按Shift+Tab複合鍵進行強制造詞,此後的操作與前面相同。對於已自定義的詞,還可以將其刪除。刪除的方法是,在輸入詞的編碼且詞還未上屏時,按Ctrl+回車複合鍵;此時,如果無重碼則那個唯一的詞被刪除掉,如果有重碼則還需要選擇想刪除的是哪個詞。需要說明的是,系統自帶的詞是不能刪除的。在進行了增、刪詞組的操作後,在關機或重新啟動計算機之前,必須先將自造詞庫保存到磁碟中,否則關機後所作的修改就無效了。
總之,第二代漢字編碼輸入法都是在CCDOS2.1的原始輸入法的基礎上發展起來的,以提高漢字的輸入速度為主要目標,增加了詞組的輸入,單字輸入時的重碼也減少了,出現了中文標點狀態,多數都能自定義詞組。第二代漢字編碼輸入法非常多,除了上面介紹的而外,在大陸影響較大的還有陳愛文先生的表形碼、鄭易里先生的鄭碼、錢玉趾先生設計的未來碼、肖水清先生的肖碼、蕭啟宏先生的啟宏全息碼等,在港台影響較大的還有朱邦復先生的倉頡輸入法、王贊傑先生的大易輸入法、廖明德先生的行列輸入法、陳華偉先生的華象中文輸入法、劉重次先生的嘸蝦米中文輸入法、戚桐欣先生的中易系統、黃金富先生的唯物輸入法等,另外還有美籍華人饒達先生的饒氏筆形輸入法和美國王安電腦公司開發的王安三角編碼法等。

第三代漢字編碼輸入法

到了九十年代末,隨著微機價格的進一步降低、存儲處理能力的進一步增強、Windows圖形作業系統的流行和國際網際網路的興起,用戶界面變得非常友好,微機大面積地進入中國的普通百姓家庭,進入了中國小教育中,真正實現了微機在中國的大普及。微機的大普及使得打字成為每個人的基本技能,就像會寫漢字一樣;需要別人打字就像需要別人代筆一樣,實際上是文盲的標誌。這樣便造就了一個龐大的非職業打字員用戶群體。打字員作為一個職業正在快速消失。一般用戶在打字時的操作方式是“想打”,與職業打字員的“盲打”方式完全不同。“盲打”要求操作者儘量少看螢幕,輸入法提供的反饋信息只有在操作員不能“盲打”時才偶爾派上用場;而“想打”時操作者始終是看著螢幕的,輸入法提供反饋的方式和反饋信息量的大小都會對操作者的輸入活動產生巨大影響。Windows圖形作業系統為人機界面的豐富化提供了前提條件,可以滿足反饋信息多樣化的需求。
現代微機強大的存儲處理能力為新型的存儲密集型和處理密集型輸入法的誕生提供了物質基礎。輸入法程式不再局限於DOS時代64KB的駐留記憶體中。千兆級的運算速度使得複雜的智慧型算法得以投入運行。硬碟容量不僅從兆級擴大到千兆級,訪問硬碟的速度也比DOS時代大大提高。將巨型的詞庫存儲在硬碟上並進行快速搜尋已不成問題。計算機教育日益廣泛地在中國小開展後,學生們從小就開始學習打字了。漢字編碼與語言文字教育的關係問題被尖銳地提了出來。起碼的要求是,漢字編碼不能與語言文字知識相衝突。理想的情況是,把漢字編碼輸入與語言文字知識的學習結合起來,起到相互促進的作用。
在上述背景下,第三代漢字編碼輸入法應運而生,其指導思想是:規範、易學、易用並且儘量保持輸入速度。這一時期,智慧型化拼音輸入法的研究高潮迭起,也出現了以筆畫或筆對為輸入單位的純形碼,還出現了以聲母和筆畫(或筆對)為基礎的音形碼。
智慧型化拼音輸入法
智慧型化拼音輸入法按其實現原理可以分為四種:基於理解的、基於語用統計的、基於模板匹配的和基於上下文關聯的。
智慧型ABC是目前Windows作業系統上使用得最為廣泛的準語句級拼音輸入法,因為它是以詞組和短語為單位而不是以全句為單位進行轉換的。智慧型ABC最大的特色是能夠非常方便地自定義詞組和調整重碼字詞的順序。用戶只需按自己的想法進行輸入,輸入時可以不進行手工分詞,系統會從前到後逐個進行自動分詞。在沒有詞組時,系統自動按單字方式顯示重碼字供用戶選擇;一旦用戶選定並組成新詞後,系統就可以記住它。在系統分詞不正確或系統提供的詞不是用戶需要的詞時,用戶也可以加以修改,系統也能記住用戶所作的修改。通過較長時間的使用後,如果用戶沒有發生變化,系統逐步適應該用戶的使用習慣,使用戶的輸入過程變得自如起來。
智慧型ABC也有很多值得改進的地方。首先,在輸入時可以隨意使用全拼、簡拼、混拼,輸入者可以在任何時候進行音字轉換,過多的方式讓用戶不知哪種是最好的。看似非常靈活,但卻實際上是把最佳化輸入的任務交給了用戶。但大多數用戶不是這方面的專家,不可能很好地完成這項任務,從而導致用戶走很多彎路或形成不好的、低效的輸入習慣。其次,音字轉換的準確率不高,句內修改很頻繁,導致輸入速度不理想,即使使用雙拼也沒有自然碼的效率高。
微軟拼音是真正意義上的語句級音字轉換智慧型輸入法,是微軟自然語言處理技術多年科研成果的結晶。微軟拼音採用拼音作為漢字的錄入方式,用戶不需要經過專門的學習和培訓,就可以方便使用並熟練掌握這種漢字輸入技術。微軟拼音採用基於語句的整句轉換方式,用戶連續輸入整句話的拼音,不必人工分詞、挑選候選詞語,這樣既保證了用戶的思維流暢,又大大提高了輸入的效率。微軟拼音提供的人機界面非常具有特色。組字視窗可以嵌入正在輸入的文本的插入游標處,減少用戶在輸入時視線的移動次數,使得輸入法的易用性得到了很大提高。逐鍵變換並提示轉換結果,使得用戶不必自己做何時進行轉換的決策。用戶可以輸入的編碼長度沒有限制,當超過系統的長度上限或遇到句號時系統會自動進行轉換,以便用戶能繼續不間斷地輸入。由於考慮的上下文較廣,微軟拼音能夠達到很高的轉換準確率。微軟拼音在默認情況下拒絕用戶輸入簡拼和混拼,可以引導用戶養成良好的輸入習慣。微軟拼音也存在一些問題。首先,在編碼輸入出錯或轉換不正確時進行句內編輯的操作很繁瑣和低效。其次,逐鍵變換時往往會把已經轉換正確的內容又修改錯了,用戶不得不隨時監視輸入內容的正確性,當已轉換的內容較多時是非常勞心的。另外,微軟拼音沒有提供方法加速單字的錄入,也沒提供方法來輸入不認識的字,是不完備的輸入法。
基於筆畫(或筆對)和/或聲母的輸入法
採用筆畫、聲母這兩個最簡單的漢字特徵信息來進行編碼,可以極大地提高輸入法的易學性。但是,漢字的筆畫一般歸為五種。筆畫種類太少,勢必增加編碼的長度,從而影響輸入速度。於是,如何縮短碼長、提高錄入效率成了這類輸入法成功與否的關鍵問題。福建雙筆碼軟體開發有限公司研製的雙筆碼是一種基於筆畫的純形碼。為了克服筆畫種類過少的問題,雙筆碼引入了一種新的筆畫類型“叉”,從而將筆畫種類擴大為六種,取碼時按順序每取兩筆構成一個筆對,共可形成36種不同的筆對,並在鍵盤上相應的鍵位區內選擇鍵位輸入。另外,雙筆碼還規定病字旁、“口”、提手旁和“日”應作為一個整體取碼。根據漢字不同構造的組合形狀,雙筆碼把漢字劃為三類基本字型即左右型、上下型和綜合型。不論哪種類型的漢字,均按四碼進行編碼。雙筆碼詞組的輸入方法為:二字詞輸入每個字的頭兩碼;三字詞輸入前兩個字的頭一碼和末字打頭兩碼,四字及四字以上詞輸入一、二、三、末字的頭一碼。
雙筆碼的優點是:
  • 與傳統的部件類輸入法相比,記憶量減少了許多;
  • 採用筆對和36鍵編碼後平均碼長也相當短;
  • 如果不按筆對而按單筆畫輸入,就可以非常容易地向數字鍵盤移植雙筆碼。
但是雙筆碼的缺點也非常明顯:
  • 作為基於筆畫的輸入法,它的取碼和編碼規則複雜,例外也不少,學習難度仍然很大;
  • 採用了上排數字鍵進行編碼,擊打不方便,且與常用數字的輸入相衝突,影響了實際輸入速度。
陳勁松先生髮明的二筆輸入法是目前使用得比較廣泛的輸入法之一。它是一種基於聲母和筆畫的輸入法,也可以單純基於筆畫進行輸入。二筆輸入法的30個編碼字元在通用鍵盤上分布於六個區,即五個雙筆畫區和一個單筆畫區。區內再根據雙筆畫的第二筆或根據單筆畫,按橫、豎、撇、點、折的順序定位。但10個設定偏旁部首的鍵位需要記憶。二筆輸入法將漢字按字形結構分為獨體字和合體字。輸入漢字時,第一碼取漢字拼音首字母,從第二碼起取筆畫,最多取四碼,不足四碼應全取,不能取雙筆畫時就取單筆畫。獨體字不必拆分;第一碼取拼音首字母,第二碼起按筆順取筆畫的代碼,最多取四碼。合體字拆分成兩半,按漢字筆順規則,先寫的部分定為前半,後寫部分為後半;第一碼取取拼音首字母,第二碼取前半的第一、二筆,第三碼取後半的第一、二筆,第四碼取後半的第三、四筆。二筆輸入法詞組的編碼規則為:二字詞取每個字的前二碼,三字詞取第一字的前二碼和最後兩個字的第一碼,四字及四字以上詞取前三字和最後一字的第一碼。二筆輸入法的優點是:編碼規則比雙筆碼更加簡單,使用的編碼字元也僅有30個;通過使用聲母和筆畫兩種漢字特徵信息編碼,區分同碼字詞的能力得到了增強,取得了較高的輸入效率;對於不認識的字還可以按全形方式輸入;如果不按筆對而按單筆畫輸入,也可以非常容易地向數字鍵盤移植。但是二筆輸入法也還存在問題:由於使用了筆對和設定部首,並需區分獨體字和合體字進行不同的編碼,因而學習難度和使用難度仍然較大。

數字鍵盤編碼輸入法

迄今為止,全國手機擁有量已超過3億,手機簡訊息的產值超過50億人民幣。手機擁有量已經超過PC機用戶,用手機輸入漢字的人群遠遠超過用通用大鍵盤輸入漢字的人群。
目前,美國特捷公司的T9拼音和T9筆畫輸入法、加拿大字源公司的字能筆畫輸入法和Motorola公司的iTap輸入法壟斷了中國大陸和港台的手機輸入法市場。但是,國外的手機數字鍵盤輸入法不盡如人意。以筆畫輸入為例,iTap用9個筆畫,字能用8個筆畫,T9用5個筆畫。相同的一個筆畫,不同的手機可以放在不同的位置上,輸入速度也不理想。為了打破外國手機輸入法壟斷中國手機市場和手機輸入法不規範的尷尬局面。由中國中文信息學會等主辦,由黃金碼出版社(香港)有限公司等單位承辦,於2004年11月21日,在人民大會堂舉行了為期三天的中國首屆手機中文輸入大賽暨漢字數字碼輸入技術套用高峰論壇。在32支參賽隊伍中,有23支參加模擬手機漢字數字碼輸入比賽,9支參加手機中文輸入比賽。除了已參賽的數字編碼方案外,比較引人注意的還有王永民先生的五筆數碼、鄭岩松先生的左右數碼等。以下僅對當前使用得最為廣泛的T9拼音、T9筆畫和首屆手機中文輸入大賽中獲得冠軍的黃金碼、大眾數字碼進行介紹。
T9拼音本質上採用的是一種全拼單字加聯想的早期通用鍵盤輸入技術。其最重要的創新是可以根據手機鍵盤上按鍵的組合情況判斷是否能組合成合法的國語音節,從而避免了傳統上通過多次按鍵來輸入一個拼音字母的弊端。但是,當按鍵組合適合多個合法的國語音節,而且默認選擇的國語音節又不是用戶所需要的時,用戶還是得進行手動選擇。另外,全拼的拼式過長、需要按1鍵進入選擇狀態和聯想造成的過度人機互動都使得T9拼音的輸入效率很低,而且全拼對國語不好的人難度很大。
T9筆畫採用目前多數輸入法對筆畫的歸類方法將漢字筆畫歸為橫、豎、撇、點、折五類,分別用1、2、3、4、5表示。錄漢字時,按筆順進行輸入,逐鍵提示,每屏數個,高頻優先,最長可輸入12個筆畫,並支持聯想。由於分別使用五個鍵表示五種筆畫,因此不需要像T9拼音一樣對組合情況進行智慧型判斷,內部處理邏輯很簡單。T9筆畫充分利用了豐富的筆畫信息和不等長碼的短碼位,並可以直接鍵選重碼字,所以它的實際輸入效率比T9拼音還高。
大眾數字碼用10個數字對字詞進行編碼。除了用1、2、3、4、5分別表示橫、豎、撇、點、折五種筆畫外,還用6、7、8、9、0分別表示交、插、八、小、口五類部件。單字按筆順取第一、二、三、四、末五個代碼、不足時按實際碼長,詞組的碼長為6位。大眾數字碼使用了相當多的筆畫組合作為部件,但由於歸類清晰,記憶起來比很多同類的輸入法要容易些,加上精心的編碼規則降低了重碼率,使得它在比賽中脫穎而出。不過,應當看到它使用的部件相當多,編碼規則也並不簡單,學習難度還是相當大的。
黃金碼用9個數字對字詞進行編碼。除了用1、2、3、4、5分別表示橫、豎、撇、點、折五種筆畫外,還用6、7、8、9分別表示“口”、“十”、“八”、“亠”四類部件。編碼時分字首和字尾,也區分獨體字與合體字的不同。在提示行不為空時,0、*和#用做選擇鍵。黃金碼最大的特色是,在輸入時若用於編碼的數字與已輸入的編碼一起不能構成另外的字詞編碼時,該數字鍵就可以用於選擇同碼字詞,這樣就大大地增加了輸入法的鍵選能力,縮短了動態平均碼長;結合高頻先見的不等長碼的使用,在輸入時基本上不用翻頁,進一步提高了輸入效率。不過,字首與字尾的區分沒有標準可循,常常因人而異;動態地使用剩餘編碼鍵選擇重碼字詞也造成選擇鍵位置變化太大,加重了人機互動的負擔。

通用輸入法平台

發明和設計漢字編碼的人很多,而真正能夠編寫漢字輸入法軟體的人是很少的,因此一個功能強大的通用漢字輸入法平台會對漢字編碼的研究、試驗和製作產生巨大的促進作用。通用輸入法平台來源於對各種輸入法的共性的抽象,反過來又對輸入法的製作有不可忽視的限制。
早在DOS時代就有人從事通用輸入法平台的研究了。但是,輸入法平台的廣泛使用還是在Windows作業系統普及以後的事。微軟公司和北京中易電子公司合作開發的碼錶輸入法生成器(Imegen.exe)是WINDOWS作業系統上最早的也是使用得最廣泛的輸入法平台。杜志民先生開發的極點中文通用輸入平台是目前影響最大的輸入法生成器,與Windows內置的輸入法生成器相比輸入功能上有了長足的進步,但是它沒有考慮與應用程式的接口問題。在功能上與極點中文通用輸入平台類似軟體還有龍文輸入平台和青月亮平台。
雖然通用輸入法平台取得了不小的進展,已能適應製作常規的基於字詞的輸入法的需要了,但是對於語句級輸入法和許多有特殊要求的字詞型輸入法還是必須專門編程才能取得最好的效果。畢竟,搞輸入法的人是極少數,而僅僅使用輸入法的人是絕大多數,因此包括編碼層次和軟體層次在內的漢字輸入法的總體性能才是最為重要的。
通用輸入法平台是在軟體層面使輸入法的製作自動化。但是,一個輸入法的製作在編碼層面也有大量的工作要做,如何利用計算機來輔助漢字編碼也引起了一些研究者的興趣,這方面的研究情況請參閱文獻。

漢字編碼輸入評測

在軟體工程中,軟體產品的質量是由軟體的一組質量屬性來定義的。漢字編碼輸入法也是一種軟體產品,但有其特殊性,不能完全按照廣義的軟體產品衡量其質量,需要有更具體的質量屬性要求。漢字輸入法面向廣泛的用戶群體,用戶的知識背景差異很大,用戶對漢字編碼輸入法的各種質量屬性的要求也不全完一樣。
在通信系統中,編碼和解碼都是由軟體或硬體完成的,要考慮的主要問題是通信的效率和差錯率。在漢字編碼輸入系統中,編碼過程是由人來實現的,受到人的記憶能力和操作能力的限制,不可能採用通信系統中的所謂高效編碼作為輸入編碼,更不能採用理論上的極限編碼。易學性和易用性在漢字輸入編碼中占有十分重要的地位。不過,極限編碼和通信編碼所採用的編碼方法的確是高效的漢字輸入編碼值得借鑑的,它們所能達到的效率也為漢字編碼輸入的速度性能提供了比較的基準。漢字編碼輸入法的編碼對象是漢字,而漢字是我們使用的文字,文字又和語言緊密相關。在今天的信息社會中,使用漢字編碼進行漢字輸入就像識字和寫字一樣的重要。漢字編碼的這種性質使得它對人們的語文知識產生重大的影響。例如,漢字形碼中錯誤的漢字拆分方法和錯誤的筆畫、筆順衝擊漢字的書寫規範,漢字音碼中錯誤的拼音方法也會衝擊漢字的讀音規範。對於中小學生來說,使用不規範的漢字編碼還會影響正常的語文教學。有鑒於此,規範性也越來越引起國家標準部門、語言文字管理部門和民間的重視。
因此,易學性、易用性、快速性和規範性是現代漢字編碼輸入法的主要質量屬性。

易學性

易學性是指學會一種輸入法所需的記憶量。有的輸入法只需一、兩天便能掌握,有的輸入法則需要一、兩周才能輸入文稿,有的輸入法甚至需要一、兩個月的專門培訓才能上崗工作。同時,有的輸入法在一段時間沒有使用後用戶不易忘記,而有的輸入法則回生很快。所以,易學性還有易記的含義在裡面。
人的背景知識也和易學性緊密相關。如果能夠利用人的背景知識來對漢字編碼,就可以使輸入法的易學性增強,而且也能通過輸入漢字鞏固人的背景知識。當然,背景知識也是需要時間來學習的。但是,背景知識是在學習輸入法以前就掌握了的,不能將學習背景知識的時間計算在學習輸入法的時間裡。由於每個人的知識水平和知識結構都是不同的,因此在考核易學性時應該設定一個起始標準。中國小教育是每個國民應受的基礎教育,所以我國現行中國小語文教材中的內容可以作為漢字編碼輸入法的國民教育背景知識。這種背景知識包括:
  • 認識3000左右漢字;
  • 掌握漢語拼音方法拼寫漢語的字詞;
  • 會使用部首檢字法查字典;
  • 按正確筆順書寫漢字。
應當看到,對上述知識的掌握程度是因人而異、因地區而異的,而且上述知識用於漢字編碼時所能發揮作用的大小也是不一樣的。由於方言的原因,有些人雖然能認識3000左右的漢字,但卻是用方音識讀的,所以要以國語的拼音方式輸入仍然會有困難。有些人雖然會講國語,但是其國語不一定很標準。

易用性

易用性與人們輸入漢字時所承擔的生理和心理負荷密切相關,而人的生理和心理負荷又與人們輸入漢字時形成條件反射的容易程度密切相關。影響輸入法易用性的主要因素如下:
  1. 鍵元集的大小和字元在鍵盤上的分布。重複擊打同一個鍵比從多個鍵中選擇一個鍵擊打要輕鬆。從小的鍵元集中選擇按鍵比從大的鍵元集中選擇按鍵要輕鬆。按鍵序列中的按鍵合理地交替出現時又比不合理地交替出現時更讓人易於操作一些。
  2. 字元的提取方式。不同的輸入法提取的字元種類和順序是不同的,從而在編碼時使人產生了不同的心理負荷。順序地提取字的筆畫顯然比從字的某些字根中提取筆畫要容易;提取整字的聲母比提取字根的聲母要簡單。
  3. 重碼字詞的多少。重碼字詞越少則越有助於增強其易用性。全拼輸入法的編碼雖然很簡單,但是它的單字重碼很多,要靠觀察提示行選擇所需的字。眼睛不斷地掃視選擇視窗所產生的視覺疲勞影響了全拼輸入法的易用性,即使通過長期的訓練,要記住每個字的重碼序號都幾乎是不可能的,也就是說全拼輸入法幾乎不可能實現盲打。五筆字型的編碼很複雜,開始學習時易學性和易用性都很差,但是它的單字重碼很少,通過強化訓練記住編碼後,輸入時就基本上不需要觀察提示行,因此後期的易用性得到提高,這也是熟練的五筆字型操作員的擊鍵速度都很快的原因。
  4. 聯想字詞的多少。聯想具有和重碼類似的性質,它們都是將多個選擇項目羅列出來供用戶選擇。早期基於單字的輸入法靠聯想來縮短動態碼長,當輸入者對編碼和鍵盤操作不是很熟練時的確能夠在一定程度上加快輸入速度,但是當輸入者對編碼和鍵盤操作熟悉後,聯想時的選擇就成為瓶頸,並且即使通過長期的訓練也難以提高鍵選速度。因此,熟練的錄入員是不用聯想的。
  5. 編碼的穩定性。編碼的穩定性越好就越容易形成條件反射,因而就越能增強其易用性。動態重碼調序和動態碼長調整雖然有助於縮短動態碼長,但卻會破壞編碼的穩定性。如果用戶已經記助了某個字詞重碼順序或碼長,當該字詞的順序或碼長被改變時就會導致用戶發生操作錯誤,從而影響輸入法的易用性。
  6. 操作的簡便性。當遇到輸入法沒有的詞組時,有的輸入法需要用戶手動切換到造詞狀態,輸入詞組的編碼和組成詞組的字,然後再手動關閉造詞狀態;有的輸入法則可以自動進入造狀態,待用單字輸入完詞組後還能自動生成詞組的編碼並自動退出造詞狀態;顯然後者比前者簡單得多。當遇到生字時,有的輸入法需要用戶切換到其它的輸入法,而有的輸入法本身就提供了輸入生字的手段,從而更加簡便。

快速性

快速性就是輸入漢字的速度,一般以平均每分鐘錄入多少個漢字計算。自從漢字編碼鍵盤輸入法問世之日起,漢字輸入速度就一直是輸入法研製者和使用的共同關心的問題,從而也是輸入法評測的重要指標。影響輸入法快速性的因素很多,而且各因素之間關係錯綜複雜。機器和軟體不是影響輸入法的瓶頸,但是編碼性質和人參與的所有輸入活動都會影響輸入速度,如下所述。
  1. 獲取字詞。漢字編碼輸入的第一步就是獲得要輸入的字詞。獲得字詞的方式對輸入速度的影響是相當大的。“看打”時,錄入者需要從稿件上的連續文本中通過視覺逐個取出字詞。如果稿件不清晰易讀,就會影響錄入者獲取字詞的速度。如果輸入法不能夠讓錄入者實現盲打,則他就會不斷地將視線轉移到螢幕去看提示信息,來回的視線轉移導致他難以定位應輸入字詞的位置,最終導致輸入速度降低。如果錄入者使用的輸入法是以字音為字元的,當他遇到不認識的字時就不能輸入,於是不得不換用基於筆劃的方法查字,從而影響輸入速度。“聽打”時,錄入者從口授者的連續話語中通過聽覺獲取待輸入的字詞。如果口授者的語音不清楚或者環境太嘈雜,就會影響錄入者接收字詞,口授者不得不經常重複自己說的話。如果錄入者使用的是形碼,將語音在頭腦中轉換為字形需要一個過程,而且當他遇到不會寫的字時就不能輸入,不得不轉換用拼音輸入,從而影響輸入速度。“想打”時,錄入者邊思考邊錄入,沒有外界的字形和口授的語音作參考,使用的往往都是自己熟悉的字詞。人在寫作不同的內容時,形成腹稿的速度是不一樣的,而且具有突發性。新聞稿件、事務性公文的起草速度較快,學術論文的寫作進度較慢。如果構思文稿的速度太慢,輸入速度也快不起來。
  2. 編碼長度。字詞編碼的平均長度是評價輸入法速度性能的一個重要參數,而且便於定量地計算。但是在使用這個參數時需要特別注意幾個問題,否則會誤入歧途。首先,測試文本的選擇必需是隨機的典型文本。如果測試文本不是隨機的而是已知的,那么任何輸入法都可以預先將整個文本保存,然後用一鍵就能輸入完畢。如果測試文本不是典型文本而是偏離漢字統計特徵的罕見文本,那么該文本就可能非常有利於或者非常不利於某種輸入法,結果也是不具有代表性的。其次,計算碼長時應當包括輸入字詞時的所有按鍵,如選擇鍵、翻頁鍵、狀態切換鍵等,不能僅僅計算碼本中字詞編碼所用的碼元數。最後,字詞平均碼長必需同其它因素結合才能正確地評價輸入法的速度性能。這些因素包括碼元的種類和數量、選擇操作和聯想操作的頻繁程度、操作員的熟練程度、輸入的持續時間等等。只有在其它因素都相同的情況下,字詞平均碼長才具有可比性。如果兩種輸入法的碼元數量相差懸殊,那么用平均碼長來比較這兩種輸入法的輸入速度就是不合理的。例如,一個極端的情況是將所有的漢字顯示在一個平面表中讓錄入者選擇輸入,這時每個字的碼長均為1,但是顯然這種輸入法的效率是極低的,其效率比全拼輸入法都低得多。
  3. 擊鍵操作。擊鍵操作包括尋找鍵位和擊打鍵位兩種動作,其中擊打鍵位所花的時間是固定的,而尋找鍵位決定了擊鍵操作花費在不同鍵位上的時間的差別。輸入法使用的鍵位越多、鍵位分布得越不合理,錄入者花費在尋找鍵位上的時間就越長,擊鍵速度就越慢。
  4. 選擇操作。簡碼、重碼、聯想、翻頁都有可能導致用戶在輸入時通過觀察反饋提示來選擇字詞。通過一段時間的輸入用戶一般都能記住一、二級簡碼字詞,有的甚至能記住三級簡碼字詞。但是,重碼字詞、聯想字詞的頁碼和順序卻很少有人能夠記住。因此,簡碼雖然會影響用戶使用輸入法時初期階段的擊鍵速度,卻能在熟悉後提高擊鍵速度;而重碼選擇和聯想即使通過長期的使用也很難提高用戶的擊鍵速度。
  5. 詞組管理。現代漢字編碼輸入法都很重視利用詞組來提高輸入速度。但是,詞組的數量巨大,一方面輸入法不可能收錄所有的詞組導致詞組不夠用,另一方面太多的詞組又會造成大量重碼。如果輸入法不能提供線上造詞的功能或者其線上造詞過程很複雜,那么當用戶用到輸入法沒有的詞組時就會造成“白打”,當他試圖造詞時又會對鍵入速度造成很大影響。另外,錯詞修改和無用詞的刪除也是一個頭疼的問題。
  6. 狀態切換與非漢字元號。漢字文本中不僅有漢字、標點,還可能有非漢字字元如英文字母、拼音字母、數字元號、數學符號等。如果沒有好的狀態切換和輸入非漢字元號的手段,在遇到混有一些非漢字元號的文本是就會極大地降低錄入速度。
  7. 改正錯誤。輸入時如果出現錯誤,就需要修改。修改操作一般是非互動性的,非常費時和影響速度。如果不修改錯誤又會影響輸入的正確率,導致校對文本時花費更多的時間。

規範性

規範性是以國家標準機構出台的有關輸入法的標準以及國家語言文字管理部門出台的有關規範為尺度來衡量的。
  1. 國家標準:GB2312-80《信息交換用漢字編碼字元集基本集》、GB13000.1-1993《信息技術通用多八位編碼字元集(UCS)第一部分:體系結構與基本多文種平面》、GB18030-2000《信息技術信息交換用漢字編碼字元集基本集的擴充》、GB/T18031-2000《信息技術數字鍵盤漢字輸入通用要求》、GB/T18220-2003《信息技術通用鍵盤漢字輸入通用要求》。其中前三者規定了輸入法的編碼對象(即編碼字元集),後兩者分別就數字鍵盤和通用鍵盤上的易學性、鍵位設定、編碼長度和鍵選率提出了要求。
  2. 相關語言文字規範:GF3001《信息處理GB13000.1字元漢字部件規範》、GF3002《GB13000.1字元集漢字筆順規範》、GF2001-2001《GB13000.1字元集漢字折筆規範》、GF3006-2001《漢語拼音方案的通用鍵盤表示規範》。

質量屬性之間的關係

以上漢字編碼輸入法的各種質量屬性之間有著複雜的關係,有交叉的、包含的,也有相互對立的、矛盾的。因此,要使各個質量屬性都達最優是根本不可能的,只能分清主次並尋求一個最好的平衡點。易學性與易用性及快速性之間往往是矛盾的。如果僅僅考慮易學性指標,那么完全可以設計一種不需任何學習的輸入法。例如,在螢幕開設一個視窗,逐頁將漢字列出來,每頁顯示N個漢字;用戶通過逐字查找和翻頁來定位漢字,然後用鍵盤或滑鼠選定。顯然,這種輸入法的易用性和快速性都很差。當N很大(如N為1000)時,雖然翻頁操作會減少,但查字的過程變得緩慢而艱難,人的眼睛很快就會疲勞。當N很小(如N為5)時,雖然查字過程較快,但翻頁操作又會十分頻繁,手指很快就會疲勞,而且由於平均每字的操作次數很多,速度也慢。實際上,完全依靠提示的話,不可能設計出實用的輸入法。往往可以通過降低易用性來增強易學性。往往又可以通過加強訓練來提高易用性。易用性提高的結果是輸入者的操作形成條件反射,導致擊鍵速度加快,從而提高漢字輸入速度。

相關詞條

熱門詞條

聯絡我們