推薦文檔列表

漢字的動(dòng)態(tài)編碼與顯示方案

時(shí)間:2021-10-01 08:10:51 電子通信論文 我要投稿

漢字的動(dòng)態(tài)編碼與顯示方案

摘要:綜合幾種常用單片機(jī)漢字顯示方案,提出一種基于PC機(jī)預(yù)處理的漢字動(dòng)態(tài)編碼和動(dòng)態(tài)字庫(kù)的顯示方法,較好地解決了存儲(chǔ)空間、顯示速度、軟件開(kāi)發(fā)維護(hù)幾方面的相互矛盾;具有平臺(tái)化的優(yōu)點(diǎn),同時(shí),給出針對(duì)MCS51優(yōu)化的匯編顯示例程。

    關(guān)鍵詞:機(jī)內(nèi)碼 動(dòng)態(tài)編碼 字庫(kù)

漢字的動(dòng)態(tài)編碼與顯示方案

因?yàn)闈h字本身的特點(diǎn),顯示漢字始終是計(jì)算機(jī)在我國(guó)應(yīng)用普及的一個(gè)障礙。最初,為了能在PC機(jī)上顯示、處理漢字,國(guó)人發(fā)明了一種硬件設(shè)備"漢卡",后來(lái)各種各樣的采用純軟件技術(shù)的中文DOS逐漸成熟,其中、西文軟件的運(yùn)行速度和性能還是有明顯的差距。最終在軟件進(jìn)入支持UNICODE、真正實(shí)現(xiàn)國(guó)際化的WIN95以后,硬件跨入"奔騰"時(shí)代,才實(shí)現(xiàn)了漢字與西文的統(tǒng)一顯示,但是這一切是以硬件資源的飛速發(fā)展為前提的。以國(guó)際GB2312為例,一、二級(jí)漢字庫(kù)共收錄了6000多個(gè)漢字,每個(gè)字按16×16點(diǎn)陣計(jì)算,字模需要占用32字節(jié)的存儲(chǔ)空間,整個(gè)字庫(kù)的規(guī)模在200k字節(jié)以上,高點(diǎn)陣(24點(diǎn)陣以上)和矢量字庫(kù)以及Windows用的TrueType字體的字庫(kù)規(guī)模都是幾兆字節(jié)大小,這在早期的386時(shí)代是難以想象的。單片機(jī)因?yàn)槭褂渺`活、結(jié)構(gòu)簡(jiǎn)單、體積小、成本低而在工業(yè)和生活中得到廣泛應(yīng)用,也正是因此,它的硬件資源很有 限,尋址和計(jì)算機(jī)能力都遠(yuǎn)低于PC機(jī),顯示漢字更受限制。人們不滿足單片機(jī)系統(tǒng)采用LED數(shù)碼管的簡(jiǎn)單顯示,根據(jù)單片機(jī)的特點(diǎn),開(kāi)發(fā)出了很多種漢字顯示方法。

1 幾種常用單片機(jī)顯示漢字方法

(1)采用標(biāo)準(zhǔn)字[1]

這種方法仿器中文DOS的辦法,將一個(gè)標(biāo)準(zhǔn)的漢字庫(kù)裝入ROM存儲(chǔ)器,再根據(jù)漢字的機(jī)內(nèi)碼在字庫(kù)中尋址,找到對(duì)應(yīng)的字模,提取后送到顯示器顯示。因?yàn)椴捎昧撕蚉C機(jī)相同的編碼(機(jī)內(nèi)碼),軟件的開(kāi)發(fā)和維護(hù)非常簡(jiǎn)單,基本上與寫PC機(jī)軟件差不多。而對(duì)單片機(jī)系統(tǒng)自身的要求則相對(duì)高多了,16×16點(diǎn)陣的字庫(kù)需要256K字節(jié),但是一般8位單片機(jī)的尋址能力只有64K字節(jié),要進(jìn)行存儲(chǔ)器擴(kuò)充,除增加很大一部分硬件成本外,還因?yàn)橐M(jìn)行存儲(chǔ)器分頁(yè)管理、地址切換,顯示速度明顯受影響,而且只能顯示一種點(diǎn)陣字體。

(2)直接固化顯示字模[2]

將要顯示的語(yǔ)句中全部漢字的字模數(shù)據(jù)依次提取出來(lái),順序存放在存儲(chǔ)器中,當(dāng)顯示時(shí),直接取出字模數(shù)據(jù)送至顯示器即可。這種方法占用空間少,程序?qū)崿F(xiàn)簡(jiǎn)單,顯示速度快;但是字模數(shù)據(jù)的提取和存儲(chǔ)安排是一件委有繁瑣的事件,要想大量顯示漢字或進(jìn)行程序修改幾乎是不可能的,軟件的可維護(hù)性很差。

(3)建立帶索引的小字庫(kù)[3]

將全部要顯示的漢字統(tǒng)一建成一個(gè)小字庫(kù),字庫(kù)分為2部分:索引素和字模表。索引表由若干定長(zhǎng)記錄組成,記錄的內(nèi)容為:漢字機(jī)內(nèi)碼、地址碼、識(shí)別碼。其中地址碼是該漢字字模在字模表中的位置,識(shí)別碼標(biāo)志該漢字的點(diǎn)陣形式或字體等。字模表中按素引存放漢字字模。顯示漢字時(shí)先根

[1] [2] [3] [4]