漢字編碼輸入系統(tǒng)的編碼器
漢字編碼輸入系統(tǒng)中的編碼器是由輸入人員來(lái)充當(dāng)?shù)纳谓堋K褟男旁磥?lái)的消息用某類字符進(jìn)行編碼。由于消息所含的漢字個(gè)數(shù)不同,便形成了單字型全度、字詞型和整句型三種類型的輸入法。構(gòu)成消息的所有字符(稱為源字母)構(gòu)成了源字母表斥滤,而編碼用到的所有字符(稱為碼字母或碼元)構(gòu)成了碼字母表将鸵。消息又稱為源字,而將消息編碼后形成的碼字母序列叫做碼字佑颇。碼字將被直接或間接地作為信道的輸入顶掉。如果碼字母就是鍵盤字母,則碼字母就直接被作為信道的輸入挑胸。如果碼字母不是鍵盤字母痒筒,就需要通用某種映射將其與鍵盤字母對(duì)應(yīng)才能作為信道的輸入。同時(shí)考慮信源和信道的特點(diǎn)來(lái)進(jìn)行的編碼稱為信源信道聯(lián)合編碼。
由于非漢字符號(hào)的輸入通常不是采用一般意義上的編碼方法進(jìn)行的簿透,因此將其另做專題討論移袍。對(duì)漢字符號(hào),結(jié)合研究漢字編碼輸入系統(tǒng)的需要老充,我們從理論和實(shí)際兩方面來(lái)討論其編碼問(wèn)題葡盗。
① 理論編碼
從理論上,我們可以考慮編碼時(shí)的極端情況啡浊。極端情況在實(shí)踐中是不可能遇到的觅够,但是卻對(duì)實(shí)踐具有方向性的指導(dǎo)意義。由于漢字編碼輸入法所用的碼字母數(shù)多在26至36之間虫啥,因此我們的計(jì)算都只針對(duì)這兩種大小的碼字母表蔚约。
在論述信源時(shí)我們知道,不限制編碼對(duì)象的長(zhǎng)度時(shí)漢字極限熵為4.5比特涂籽,以詞為單位計(jì)算的詞零階熵折合成漢字熵的結(jié)果為7.64苹祟,以單字為編碼對(duì)象時(shí)漢字零階熵為9.66。如果均衡地使用各個(gè)碼字母進(jìn)行編碼且各碼字母之間沒(méi)有制約關(guān)系评雌,則在碼字母數(shù)為36和26時(shí)的最短平均碼長(zhǎng)(碼字母數(shù)/字)如表3.2所示树枫。
從表3.2中可以看出,碼字母數(shù)越少最短平均碼長(zhǎng)越長(zhǎng)景东,編碼對(duì)象越小最短平均碼長(zhǎng)也越長(zhǎng)砂轻。在構(gòu)造編碼時(shí),對(duì)于極限編碼來(lái)說(shuō)不論是采用等長(zhǎng)編碼還是采用不等長(zhǎng)編碼其結(jié)果都是一樣的斤吐,是編碼效率的理論極限值搔涝。但對(duì)于編碼對(duì)象的大小受限而且大小一定的編碼來(lái)說(shuō),不等長(zhǎng)編碼的效率要比等長(zhǎng)編碼的效率高得多和措。
極限編碼的構(gòu)造方法已在3.1.2節(jié)中介紹過(guò)了庄呈。目前已有現(xiàn)成的字頻表和詞頻表可供使用,因此平均碼長(zhǎng)最短的漢字信源字編碼和詞編碼都可以采用N元Huffman編碼來(lái)構(gòu)造派阱。如果考慮鍵位相關(guān)擊鍵時(shí)間當(dāng)量诬留,則需要對(duì)編碼字符在鍵盤上的分布進(jìn)行調(diào)整才能充分地利用信道容量。
② 實(shí)際編碼
在漢字編碼輸入實(shí)踐中贫母,對(duì)漢字信源進(jìn)行編碼時(shí)不可能只考慮編碼對(duì)象的使用頻率和鍵位相關(guān)擊鍵時(shí)間當(dāng)量表文兑。由于編碼工作需要人來(lái)完成,因此為了便于用戶記憶腺劣,實(shí)際的漢字編碼是分兩步進(jìn)行的绿贞,而不是直接用碼字母對(duì)漢字編碼。第一步是從漢字抽取特征信息元(又稱字元)誓酒,第二步是將字元映射到鍵盤字符樟蠕。詞組的編碼一般是從單字編碼根據(jù)一定的規(guī)則派生而來(lái)的贮聂。
③ 提取字元
在漢字編碼實(shí)踐中使用的最重要的字元是字音和字形。提取什么樣的字元寨辩?怎樣提取這些字元吓懈?這些問(wèn)題在一定程度上決定著漢字編碼輸入法的成敗。
(1) 字音
我國(guó)存在著北方話靡狞、吳語(yǔ)耻警、湘語(yǔ)、贛語(yǔ)甸怕、粵語(yǔ)甘穿、客家話、閩語(yǔ)七大方言梢杭。這些方言區(qū)的人們雖然難以進(jìn)行口頭交流温兼,但是卻都使用著同一種以方塊漢字為基礎(chǔ)的文字。也就是說(shuō)武契,同一個(gè)漢字在不同的方言區(qū)里可以能有不同的發(fā)音募判。如果以字音為字元為漢字編碼的話,應(yīng)該以哪種方言為準(zhǔn)呢咒唆?
通過(guò)長(zhǎng)期的努力届垫,我國(guó)已經(jīng)形成了民族共同語(yǔ)。這個(gè)共同語(yǔ)是以北京語(yǔ)音為標(biāo)準(zhǔn)音全释,以北方話為基礎(chǔ)方言装处,以典范的現(xiàn)代白話文著作為語(yǔ)法規(guī)范的普通話。我國(guó)憲法第一章第十九條規(guī)定:“國(guó)家推廣全國(guó)通用的普通話”浸船。漢語(yǔ)拼音和普通話是我國(guó)基礎(chǔ)教育的內(nèi)容妄迁,加上市場(chǎng)經(jīng)濟(jì)導(dǎo)致的地區(qū)間交流的頻繁,使得普通話普及得非忱蠲快判族。
在大陸,《漢語(yǔ)拼音方案》是普通話的法定拼寫方案项戴。在臺(tái)灣,還在沿用注音符號(hào)拼寫普通話槽惫。根據(jù)漢字拼音拼寫規(guī)則周叮,在拼寫音節(jié)時(shí),以韻頭i和ü開始的零聲母音節(jié)需要變?yōu)橐詙開始界斜,而以韻頭u開始的零聲母音節(jié)需要變?yōu)橐詗開始仿耽,所以有時(shí)也將w和y看成是形式上的聲母。
漢字的數(shù)量眾多各薇,僅GB2312字符集的漢字就有6763個(gè)项贺,按新的GB18030字符集則漢字達(dá)27533個(gè)君躺。同時(shí),在輸入法中采用字音時(shí)一般都是不標(biāo)調(diào)的开缎。這樣棕叫,平均每個(gè)音節(jié)以GB2312為準(zhǔn)有6763/400≈17個(gè)漢字,以GB18030為準(zhǔn)則有27533/400≈69個(gè)奕删,一音多字的現(xiàn)象非常嚴(yán)重俺泣。當(dāng)然,實(shí)際上每個(gè)音節(jié)上分布的漢字?jǐn)?shù)量并不均勻完残,有的音節(jié)(如ji伏钠、yi等)上的漢字多達(dá)100多個(gè),而少數(shù)音節(jié)(如fo谨设、dia等)上卻僅有一個(gè)漢字熟掂。另一方面,又有不到20%的漢字對(duì)應(yīng)多種音節(jié)扎拣,使得漢字與音節(jié)的關(guān)系更加復(fù)雜赴肚。更為重要的是,漢字本身的表音能力很弱鹏秋,大部分漢字的讀音都需要逐個(gè)學(xué)習(xí)尊蚁。很多漢字又是罕見字,因此沒(méi)有誰(shuí)能認(rèn)識(shí)所有的漢字侣夷,大多數(shù)文化人也只能識(shí)讀3000多字横朋。
(2) 字形
幾千年來(lái),漢字的書寫形式發(fā)生了很大的變化百拓,經(jīng)歷了甲(骨)文琴锭、金(鐘鼎)文、篆書衙传、隸書决帖、楷書、行書蓖捶、草書等階段地回。目前,我國(guó)的漢字印刷體包括楷體俊鱼、宋體刻像、仿宋體和黑體四種。同一個(gè)字并闲,書寫形式和字體不同的話细睡,在字形上也可能有很大的差別。在GF3001《信息處理 GB13000.1字符漢字部件規(guī)范》和GF3002《GB13000.1字符集漢字筆順規(guī)范》中帝火,都以楷書的宋體和楷體為準(zhǔn)確定部件和筆畫溜徙。
字形是構(gòu)成方塊漢字的二維圖形湃缎。構(gòu)成漢字字形的要素是筆畫、筆數(shù)以及漢字部件的位置關(guān)系等蠢壹。筆畫是構(gòu)成楷書漢字字形的最小連筆單位嗓违,筆順是書寫每個(gè)漢字時(shí)筆畫的次序和方向,筆數(shù)是構(gòu)成一個(gè)漢字或漢字部件的筆畫數(shù)知残。漢字部件是由筆畫組成的具有組配漢字功能的構(gòu)字單位靠瞎,傳統(tǒng)上又稱為字根。
漢字結(jié)構(gòu)是部件構(gòu)成漢字的方式和規(guī)則求妹。最基本的漢字結(jié)構(gòu)有四種:獨(dú)體結(jié)構(gòu)乏盐、左右結(jié)構(gòu)、上下結(jié)構(gòu)和包圍結(jié)構(gòu)制恍。這些基本結(jié)構(gòu)能夠相互嵌套而形成更復(fù)雜的結(jié)構(gòu)父能。例如,“照”的結(jié)構(gòu)如圖3.3所示净神。
與部件緊密相關(guān)的另外兩個(gè)概念是部首和偏旁何吝。部首乃一部之首的意思,它是一類漢字的共同特征鹃唯,用于將漢字分類以后進(jìn)行檢索爱榕。《說(shuō)文解字》將9353個(gè)漢字分類為540部坡慌,每一部類中都有同一個(gè)表意結(jié)構(gòu)黔酥。這個(gè)表意結(jié)構(gòu)是一個(gè)獨(dú)體字,被排在這一部類漢字之首洪橘,故稱部首跪者。《康熙字典》采用214部首熄求、《漢語(yǔ)大字典》采用201部首渣玲,而《新華字典》采用189部首。對(duì)于左右型結(jié)構(gòu)的漢字弟晚,部首被特別地稱為偏旁忘衍。
(3) 取舍
上述字音和字形信息非常豐富,優(yōu)秀的漢字編碼在決定提取什么字元和怎樣提取字元的時(shí)候需要考慮到方方面面的因素卿城。王力德通過(guò)對(duì)漢字屬性的系統(tǒng)分析和評(píng)估得到了表3.3的數(shù)據(jù)[12]淑履。
表3.3中,必修系數(shù)為某漢字屬性對(duì)“中小學(xué)語(yǔ)文課所必修”的隸屬度藻雪,必修者為1,非必修者為0狸吞。規(guī)范系數(shù)為某漢字屬性對(duì)規(guī)范性的隸屬度勉耀;完全明確且有公認(rèn)的統(tǒng)一標(biāo)準(zhǔn)指煎,不產(chǎn)生歧義者為1;基本有公認(rèn)標(biāo)準(zhǔn)便斥,但使用時(shí)存在比較大的模糊性為0.5至壤;沒(méi)有公認(rèn)標(biāo)準(zhǔn),無(wú)論范圍或分類全部都是各家任意規(guī)定枢纠,模糊性相當(dāng)嚴(yán)重者為0像街。簡(jiǎn)單系數(shù)為某漢字屬性對(duì)簡(jiǎn)單性的隸屬度;簡(jiǎn)單晋渺、直觀镰绎、易掌握者為1,有一定難度者為0.5木西,難學(xué)者為0畴栖。記憶系數(shù)為某漢字屬性對(duì)記憶性的隸屬度;某屬性種類少八千,記憶量少吗讶,無(wú)須強(qiáng)制記憶,回生率低則為1恋捆;反之為0照皆;介于兩者間的為0.5。
根據(jù)表3.3的合計(jì)欄沸停,可以得到以下漢字屬性易學(xué)性的綜合排序:聲母膜毁、筆順(4);韻母星立、聲調(diào)(3.5)爽茴;字型結(jié)構(gòu)(3);部首绰垂、筆畫數(shù)室奏、角形(2);字根(1)劲装‰誓可見,字根(或部件)的易學(xué)性最差占业,而聲母和筆順的易學(xué)性最好绒怨。
另一方面,從屬性的可調(diào)整性來(lái)看谦疾,字根的靈活性最大南蹂。雖然國(guó)家出臺(tái)了GF3001《信息處理 GB13000.1字符漢字部件規(guī)范》,但是目前流行的形碼輸入法幾乎都沒(méi)有完全遵循它念恍,而且各種別出心裁的形碼方案還在不停地產(chǎn)生六剥。這是因?yàn)樽指哪:允沟镁幋a的自由度大增晚顷,從而可以得到速度素質(zhì)較好的方案。
采用盡量易學(xué)的字元做出速度素質(zhì)最好的輸入法應(yīng)該是漢字編碼鍵盤輸入的最高目標(biāo)疗疟。雖然達(dá)到這個(gè)目標(biāo)是不可能的该默,但是盡量接近這個(gè)目標(biāo)或者在易學(xué)和快速之間找到一個(gè)人們普遍接受的平衡點(diǎn),卻是能夠?qū)崿F(xiàn)的策彤。
在漢字編碼實(shí)踐中栓袖,人們根據(jù)不同的設(shè)計(jì)理念而提取不同的字元。根據(jù)提取字元的不同店诗,漢字編碼可以分為音碼裹刮、形碼、音形混合碼必搞。音碼需要考慮不認(rèn)識(shí)的字如何輸入必指。形碼需要考慮不會(huì)寫的字如何輸入。音形混合碼既要懂音又要懂形恕洲,需要考慮如何減輕記憶量塔橡。
在為單字編碼時(shí),音碼一般取聲母和韻母作為字元并按先聲母和韻母的順序提取霜第,少數(shù)音碼還后面附加聲調(diào)葛家;形碼主要取部件或筆畫作為字元,提取字元時(shí)一般按書寫順序泌类,有的則以字元的幾何位置為序癞谒,字元沖突時(shí)以大字元優(yōu)先。
在為詞組編碼時(shí)刃榨,不論哪種編碼都是從組成詞組的字中按一定規(guī)則抽取部分字元弹砚。一般的情況是,二字詞取各字的頭兩個(gè)字元枢希,三字詞取第一桌吃、二字的頭一個(gè)字元和第三字的頭兩個(gè)字元,四字及四字以上詞取前三字的頭一個(gè)字元和末字的頭一個(gè)字元苞轿。
④ 字元映射
目前漢字編碼輸入使用的鍵盤主要有通用鍵盤和數(shù)字鍵盤兩種茅诱。注意,這里的通用鍵盤不包括101鍵盤右側(cè)的小鍵盤搬卒,而數(shù)字鍵盤包括101鍵盤右側(cè)的小鍵盤瑟俭、財(cái)務(wù)用數(shù)字鍵盤小鍵盤、手機(jī)鍵盤契邀、電話鍵盤等摆寄。將字元映射到通用鍵盤字母的漢字編碼叫做“通用碼”,而將字元映射到數(shù)字鍵盤的漢字編碼叫做“數(shù)字碼”或“數(shù)碼”。
(1) 音碼字元的映射
音碼根據(jù)音節(jié)拼式與鍵盤字母的映射關(guān)系主要有全拼和雙拼椭迎。
全拼完全以《漢語(yǔ)拼音方案》為準(zhǔn)給漢字標(biāo)注普通話讀音锐帜,而拼音字母絕大多數(shù)就是鍵盤上的字符,只有兩個(gè)特殊字符ü和ê需要用鍵盤上已有的符號(hào)來(lái)代替它們畜号。另外,聲調(diào)符號(hào)也是無(wú)法直接用鍵盤輸入的允瞧,也需要變通表示简软。
GF 3006-2001《漢語(yǔ)拼音方案的通用鍵盤表示規(guī)范》規(guī)定用V表示ü,用組合EA表示ê述暂,用1痹升、2、3畦韭、4、5表示陰、陽(yáng)个曙、上伙菜、去、輕五個(gè)聲調(diào)∽Γ現(xiàn)在皮钠,以全拼做漢字編碼的輸入法,如智能ABC和微軟拼音等赠法,都已按此規(guī)范設(shè)計(jì)了麦轰。在手機(jī)鍵盤上,雖然一個(gè)鍵對(duì)應(yīng)了多個(gè)字母砖织,但是由于字母都標(biāo)在了鍵帽上款侵,所以輸入時(shí)也很直觀。因此侧纯,會(huì)漢語(yǔ)拼音和普通話的人基本上不需要學(xué)習(xí)就可以使用全拼輸入漢字新锈,導(dǎo)致目前全拼成為用戶最多的漢字輸入法。同時(shí)茂蚓,不會(huì)普通話或漢語(yǔ)拼音的人又可以通過(guò)用全拼輸入漢字來(lái)學(xué)習(xí)它們壕鹉。這樣,全拼輸入法就具有規(guī)范性聋涨、易學(xué)性和知識(shí)性三大優(yōu)勢(shì)晾浴。
但是,全拼的拼式很長(zhǎng)牍白,而且其字母在鍵盤上的分布很不均勻脊凰,使得其輸入效率受到極大的影響。為了解決這個(gè)問(wèn)題,便出現(xiàn)了雙拼狸涌。雙拼主要用于通用鍵盤切省,還沒(méi)有用于數(shù)字鍵盤的。
雙拼的實(shí)質(zhì)就是用兩個(gè)鍵盤字母表示一個(gè)普通話音節(jié)帕胆,從而壓縮音節(jié)拼式朝捆。除零聲母音節(jié)的表示特殊外,一般用前一個(gè)字母表示聲母懒豹,用后一個(gè)字母表示韻母芙盘。同一個(gè)字母既可以表示聲母也可以表示韻母,通過(guò)其在編碼中的前后位置來(lái)區(qū)分它的作用脸秽。通過(guò)表示方法的變化儒老,雙拼還可以使其字母的鍵盤分布得到一定程度的優(yōu)化。主要的雙拼方案有自然碼雙拼记餐、智能ABC雙拼驮樊、微軟雙拼、劉氏雙拼片酝、四通雙拼囚衔、聲數(shù)碼雙拼等。目前钠怯,雙拼方案的研究不少佳魔,但還沒(méi)有得到統(tǒng)一[69]-[71]。值得一提的是晦炊,文字碼拼音僅用22個(gè)字母就實(shí)現(xiàn)了雙拼鞠鲜,剩下的4個(gè)字母則用來(lái)表示聲調(diào)和進(jìn)行重碼選擇,完全避免了使用數(shù)字鍵[72]断国。
除了全拼和雙拼外贤姆,實(shí)際上還有介于它們之間的方案,不過(guò)其影響很小稳衬,沒(méi)有主流輸入法采用霞捡。
(2) 形碼字元的映射
形碼中的部件、筆畫與鍵盤字母的映射方式主要有形托薄疚、音托和位托碧信。
形托就是在形狀上與鍵盤字母相似的部件或筆畫安排在該字母所屬的鍵位上,其代表輸入法是表形碼街夭。但是砰碴,部件與字母的相似性畢竟是有限的。運(yùn)用形托時(shí)板丽,常常需要根據(jù)設(shè)計(jì)人的構(gòu)思去領(lǐng)會(huì)這種“相似性”呈枉,從多角度進(jìn)行聯(lián)想,其中不免牽強(qiáng)附會(huì)。
音托就是通過(guò)部件猖辫、筆畫本身或其名稱的讀音酥泞,取該讀音的漢語(yǔ)拼音首字母作為中介,將部件啃憎、筆畫對(duì)應(yīng)到通用鍵盤的鍵位上芝囤,其代表輸入法是大眾音形碼。但是辛萍,相當(dāng)數(shù)量的部件沒(méi)有讀音和名稱凡人,需要采用其它對(duì)應(yīng)方式或進(jìn)行硬性的規(guī)定。另外叹阔,V、I传睹、U和“,”等鍵位沒(méi)有讀音耳幢,音托無(wú)法利用它們。
位托就是通過(guò)將筆畫按某種位置規(guī)律布置在鍵盤的鍵位上欧啤。一般將筆畫分為橫睛藻、豎、撇邢隧、捺店印、折五種并按此順序排序。對(duì)于通用鍵盤來(lái)說(shuō)倒慧,鍵盤先被分成五個(gè)或六個(gè)區(qū)按摘,每個(gè)區(qū)再由外向內(nèi)或由內(nèi)向外細(xì)分為五個(gè)位。不單是基于筆畫的形碼才使用位托纫谅,基于部件的形碼也經(jīng)常使用位托炫贤。五筆字型的字根大都以其首筆確定字根在通用鍵盤上的區(qū)號(hào),再以其次筆確定字根在通用鍵盤上的位號(hào)付秕,區(qū)號(hào)和位號(hào)共同確定了字根所在的鍵位兰珍。但是,五筆字型的字根布局例外太多询吴,所以很難掌握掠河。二筆輸入法則采用順取兩個(gè)筆畫組成筆對(duì)以定其區(qū)號(hào)和位號(hào),另外對(duì)不成對(duì)的單筆則在單筆畫區(qū)定位猛计,沒(méi)有了字根這個(gè)中間層唠摹,易學(xué)性比五筆字型好得多。在數(shù)字鍵盤上有滑,一般用1跃闹、2、3、4望艺、5分別代表橫苛秕、豎、撇找默、捺艇劫、折五種筆畫,并且已寫進(jìn)GF3002《GB13000.1字符集漢字筆順規(guī)范》中惩激。
⑤ 重碼及其處理
在實(shí)際的漢字編碼中店煞,不論是字元的提取還是字元向鍵盤的映射都受到規(guī)則的約束,同時(shí)一般的輸入法對(duì)最大碼長(zhǎng)都進(jìn)行了限制风钻,以提高輸入效率顷蟀,因此重碼是不可避免的。事實(shí)上骡技,沒(méi)有重碼的輸入法記憶量太大鸣个,是不實(shí)用的,例如區(qū)位碼和電報(bào)碼只能在極其特殊的情況下使用布朦。
在通用鍵盤上囤萤,絕大多數(shù)漢字編碼的最大碼長(zhǎng)為4,也有極個(gè)別的為3或5是趴。在數(shù)字鍵盤上涛舍,一般漢字編碼的最大碼長(zhǎng)為6,但也有碼長(zhǎng)更長(zhǎng)的唆途「谎牛基于拼音轉(zhuǎn)化的語(yǔ)句型輸入法,如智能ABC和微軟拼音等窘哈,是一個(gè)例外吹榴,其最大碼長(zhǎng)可以很長(zhǎng)。對(duì)一個(gè)非語(yǔ)句型的漢字編碼來(lái)說(shuō)滚婉,單字和詞組的編碼長(zhǎng)度通常都達(dá)到了最大碼長(zhǎng)图筹。例如,在五筆字型中除個(gè)別兩個(gè)字根的漢字的編碼長(zhǎng)度為3外让腹,其余所有字和詞的編碼長(zhǎng)度都為4远剩,而五筆數(shù)碼的最長(zhǎng)碼為6。
重碼雖然不可避免骇窍,但是重碼太多則會(huì)導(dǎo)致過(guò)度的人機(jī)交互瓜晤,從而嚴(yán)重地影響輸入效率。除了在編碼時(shí)采取的離散重碼措施而外腹纳,對(duì)付重碼的措施主要有:擴(kuò)大上下文范圍痢掠、動(dòng)態(tài)地調(diào)整重碼順序和采用強(qiáng)制性簡(jiǎn)碼驱犹。
語(yǔ)句型輸入法將上下文范圍擴(kuò)展得很大,利用漢語(yǔ)音節(jié)之間的相互約束關(guān)系來(lái)限制音節(jié)所對(duì)應(yīng)的漢字?jǐn)?shù)足画,對(duì)現(xiàn)代漢語(yǔ)連續(xù)文本取得了極好的降低重碼的效果雄驹,經(jīng)過(guò)適當(dāng)?shù)挠?xùn)練準(zhǔn)確率可達(dá)98%。拼音類字詞型輸入法則盡量采用詞組進(jìn)行輸入淹辞,以避免遇到大量的單字重碼医舆。優(yōu)秀的字詞型輸入法還會(huì)提供方便的詞組自定義功能,以擴(kuò)大用戶在輸入時(shí)能夠使用的詞匯量象缀。
動(dòng)態(tài)地調(diào)整重碼順序是指在輸入過(guò)程中蔬将,遇到需要選擇的重碼字詞時(shí),則在下次輸入同樣編碼時(shí)將選擇過(guò)的字詞提前到與其同碼的所有字詞的前面央星,從而節(jié)約一次空格鍵操作霞怀,同時(shí)也使輸入者更容易將其定位。
簡(jiǎn)碼是指對(duì)常用的字詞用不完全編碼輸入莉给,而強(qiáng)制性簡(jiǎn)碼更進(jìn)一步規(guī)定凡是能用不完全編碼輸入的就不能再用完全編碼輸入里烦。這樣,強(qiáng)制性簡(jiǎn)碼不僅能夠減少重碼字詞禁谦,同時(shí)還能縮短常用字詞的碼長(zhǎng),從而極大地提高輸入效率废封。效率高的輸入法都十分重視簡(jiǎn)碼的設(shè)計(jì)州泊。
一級(jí)簡(jiǎn)碼字?jǐn)?shù)量最少,一般只有20多個(gè)漂洋,但是使用頻率很高遥皂,只需輸入第一個(gè)碼元加空格就可以錄入。二級(jí)簡(jiǎn)碼字?jǐn)?shù)量也不多刽漂,一般可有400多個(gè)演训,使用頻率也較高,用編碼的前兩個(gè)碼元加空格錄入贝咙。三級(jí)簡(jiǎn)碼數(shù)量較多样悟,可達(dá)數(shù)千個(gè),用編碼的前三個(gè)碼元加空格錄入庭猩。對(duì)于全碼碼長(zhǎng)為四的漢字編碼來(lái)說(shuō)窟她,三級(jí)簡(jiǎn)碼字并不能節(jié)約使用的鍵數(shù),但是如果使用強(qiáng)制簡(jiǎn)碼的話蔼水,則可非常有效地減少四碼碼位上的重碼震糖。
不過(guò),與最佳不等長(zhǎng)編碼相比趴腋,上述最流行的簡(jiǎn)碼設(shè)計(jì)方法是有很大冗余的吊说,有很大的改進(jìn)余地论咏。
⑥ 非漢字符號(hào)的處理
一個(gè)完善的輸入法,不僅要能輸入漢字颁井,而且還要能輸入非漢字符號(hào)厅贪。在最早的漢字編碼輸入法中,僅僅解決了漢字的編碼輸入問(wèn)題蚤蔓,就連標(biāo)點(diǎn)符號(hào)(如中文句號(hào)“卦溢。”)都需要用區(qū)位碼來(lái)輸入⌒阌郑現(xiàn)在的輸入法都對(duì)常用非漢字符號(hào)的輸入問(wèn)題非常重視单寂。
由于通用鍵盤上的按鍵有限,而許多非漢字符號(hào)都有全角和半角兩種形式吐辙,所以為了便于選擇使用同一字符的這兩種形式宣决,便在輸入法中設(shè)置了全角狀態(tài)和半角狀態(tài)。傳統(tǒng)上昏苏,在全角狀態(tài)時(shí)可以支持中文標(biāo)點(diǎn)符號(hào)的輸入尊沸。但是,在輸入實(shí)踐中贤惯,對(duì)除標(biāo)點(diǎn)外的所有ASCII字符洼专,人們都傾向于使用其半角形式。于是產(chǎn)生了中文標(biāo)點(diǎn)狀態(tài)孵构。在此狀態(tài)下屁商,除中文標(biāo)點(diǎn)和個(gè)別常用符號(hào)外,其余的ASCII字符都是半角颈墅。
在輸入中蜡镶、英文混合文本時(shí),需要頻繁地進(jìn)行中恤筛、英文狀態(tài)之間的切換和英文大官还、小寫狀態(tài)之間的切換。Windows在操作系統(tǒng)一級(jí)提供的中毒坛、英文狀態(tài)切換方法是使用Ctrl+空格復(fù)合鍵望伦。復(fù)合鍵操作時(shí)不方便,于是新型的輸入法競(jìng)相采用Shift或Ctrl進(jìn)行單鍵中煎殷、英文狀態(tài)切換屡谐。但是,英文大寫狀態(tài)蝌数、英文小寫狀態(tài)和中文狀態(tài)三者中任意兩者間的單鍵切換問(wèn)題還沒(méi)有得到很好的解決愕掏。
對(duì)于不常用的非漢字符號(hào),如希臘字母顶伞、修飾符號(hào)饵撑、數(shù)字符號(hào)等剑梳,一般采用分類的方式用不同的軟鍵盤輸入。個(gè)別輸入法提供了編碼方式來(lái)輸入非漢字符號(hào)滑潘。不幸的是垢乙,帶調(diào)漢語(yǔ)拼音字母雖然已成為了中文里不可或缺的一部分,但是還沒(méi)有輸入法完美地解決其輸入的問(wèn)題语卤。