?? 國標(biāo)字庫.txt
字號:
用【 小 | 中 | 大 】字體瀏覽
硬件:請教有關(guān)國標(biāo)字庫 [流星雨] [48次] 01-10-11 下午 02:23:41
我現(xiàn)在用到字庫,需要用字量很大,所以選用國標(biāo)字庫,但是不了解國標(biāo)字庫的組成,也不知那
本書上介紹,有那位幫幫忙,指教一二,thanks.
參考意見 [逍遙派開派掌門人] [48次] 01-10-11 下午 02:48:20
找以前DOS版漢字操作系統(tǒng)的書查查,很老了,要耐心找。
每個漢字是由區(qū)碼和位碼作為索引的;
劃分為87區(qū)(區(qū)碼),每區(qū)有94個字(即位碼)
1--15區(qū)是基本的ASCII符號和制表符、特殊符號;
16--87區(qū)是國標(biāo)漢字。
按拼音字母的順序排列,
16點陣的,32byte/漢字;
24點陣的,72byte/漢字;
國標(biāo)字庫還分為1級字庫、2級字庫。
其它的詳細(xì)情況查書吧。
漢字GB碼-->地址轉(zhuǎn)換的編程參考: [鵲橋老仙] [47次] 01-10-11 下午 03:35:50
#define LCD_X 8
#define LCD_Y 4 /*LCD大小:LCD_X*16,LCD_Y*16 像素*/
#define Hzk_SIZE 1024*8
#define LCD_Dis_RAM_Head 0x8000 /*顯存起始位置*/
data uchar chCursorSiteNow_X=0,chCursorSiteNow_Y=0; /*當(dāng)前顯示位置*/
xdata uchar Lcd_RAM[32][32] _at_ LCD_Dis_RAM_Head; /*LCD映射顯存*/
xdata uchar HzkModel[1024][32] _at_ 0x0000; /*漢字起始位置*/
//*****************************************************
//漢字顯示子函數(shù)
//內(nèi)部函數(shù)調(diào)用
//*****************************************************
void putHZ(unsigned char *str)
{
int iHZ_GB2312;
unsigned char j,rom_page;
uint i;
iHZ_GB2312=*str;
iHZ_GB2312=(iHZ_GB2312-0xa1)*94;
str++;
iHZ_GB2312+=(*str-0xa1); /*將漢字GB碼轉(zhuǎn)換為漢字相對地址(int)*/
rom_page=iHZ_GB2312/0x400; /*得到頁地址*/
rompage=rom_page; /*設(shè)置ROM頁*/
i=iHZ_GB2312-rom_page*0x400; /*得到字庫相對表指針*/
for(j=0;j<32;j++)
{
Lcd_RAM[8*chCursorSiteNow_Y][32*chCursorSiteNow_X+j]=HzkModel[i][j];
}
chCursorSiteNow_X++;
if(chCursorSiteNow_X>=LCD_X)
{
chCursorSiteNow_X=0;
chCursorSiteNow_Y++;
}
}
一點補充修正 [Oldkey] [27次] 01-10-11 下午 04:03:28
GB2312標(biāo)準(zhǔn),共6763個漢字,其中一級字庫3755個,二級字庫3008個。
機內(nèi)碼為區(qū)位碼+80H+20H,對應(yīng)的漢字區(qū)碼從B0H、位碼從A1H開始,到F7FEH止,每區(qū)94個
漢字。
GBK編碼為20902個漢字,其中GB部分兼容。
點擊這里回復(fù)這篇貼子>>
_____________________________________________________________________________
Copyright?,C51BBS論壇 2000-2002
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -