<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 自制漢字取模軟件,學(xué)嵌入式的要看

          自制漢字取模軟件,學(xué)嵌入式的要看

          作者: 時間:2012-08-10 來源:網(wǎng)絡(luò) 收藏

          學(xué)嵌入式開發(fā)這么長時間來一直都在使用別人的取模軟件,很希望有自己的取模軟件。

          今天晚上讀了一下的文章做程序如下。希望對無協(xié)嵌入式開發(fā)有幫助

          在計算機(jī)中英文一般使用 ASCII 碼來表示,而使用的是擴(kuò)展 ASCII 碼,用兩個ASCII碼來表示一個漢字。一個ASCII碼占用一個字節(jié),所有在存儲時英文是占用一個字節(jié),而漢字占用兩個字節(jié)。

          擴(kuò)展 ASCII 碼:也就是 ASCII 碼的最高位是1的 ASCII 碼,一個漢字由兩個擴(kuò)展 ASCII 碼組成,第一個擴(kuò)展 ASCII 碼用來存放區(qū)碼,第二個擴(kuò)展 ASCII 碼用來存放位碼。

          :在 GB2312-80 標(biāo)準(zhǔn)中,將所有的漢字分為94個區(qū),每個區(qū)有94個位可以存放94個漢字,形成了人們常說的,這樣總共就有 94*94=8836 個漢字。

          字庫:漢字數(shù)據(jù)就是按照這個區(qū)位的順序來存放的,也就是最先存放的是第一個區(qū)的漢字陣數(shù)據(jù),在每一個區(qū)中有是按照位的順序來存放的。

          漢字機(jī)內(nèi)碼、國標(biāo)碼和三者之間的關(guān)系為:區(qū)位碼(十進(jìn)制)的兩個字節(jié)分別轉(zhuǎn)換為十六進(jìn)制后加20H得到對應(yīng)的國標(biāo)碼;機(jī)內(nèi)碼是漢字交換碼(國標(biāo)碼)兩個字節(jié)的最高位分別加1,即漢字交換碼(國標(biāo)碼)的兩個字節(jié)分別加80H得到對應(yīng)的機(jī)內(nèi)碼;區(qū)位碼(十進(jìn)制)的兩個字節(jié)分別轉(zhuǎn)換為十六進(jìn)制后加A0H得到對應(yīng)的機(jī)內(nèi)碼

          國標(biāo)碼 由兩個擴(kuò)展ascii碼組成

          漢字區(qū)位碼的存放實在擴(kuò)展 ASCII 基礎(chǔ)上存放的,并且將區(qū)碼和位碼都加上了32,然后存放在兩個擴(kuò)展 ASCII 碼中。具體的說就是:
          漢字的
          第一個擴(kuò)展ASCII碼 = 128+32 + 漢字區(qū)碼
          第二個擴(kuò)展ASCII嗎 = 128+32 + 漢字位碼

          程序要用的字庫HZK16

          點擊瀏覽下一頁

          程序如下
          #include "stdio.h"
          #includeiostream>
          using namespace std;

          void getCode(unsigned char str[],unsigned char data[]);

          void main()
          {

          unsigned char str[] = {"王挺帥"};
          unsigned char data[32];
          for(int m = 0;m 1;m++){
          getCode(str+m*2,data);


          上一頁 1 2 下一頁

          關(guān)鍵詞: 漢字編碼 點陣 區(qū)位碼

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();