CN102262669A - 一种从汉语拼音到汉字内码的快速输出方法 - Google Patents

一种从汉语拼音到汉字内码的快速输出方法 Download PDF

Info

Publication number
CN102262669A
CN102262669A CN201110214293XA CN201110214293A CN102262669A CN 102262669 A CN102262669 A CN 102262669A CN 201110214293X A CN201110214293X A CN 201110214293XA CN 201110214293 A CN201110214293 A CN 201110214293A CN 102262669 A CN102262669 A CN 102262669A
Authority
CN
China
Prior art keywords
address
character
phonetic alphabet
chinese phonetic
chinese
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201110214293XA
Other languages
English (en)
Other versions
CN102262669B (zh
Inventor
严琪
吕芝艳
钟兴旺
王磊
王一唯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Institute of Space Radio Technology
Original Assignee
Xian Institute of Space Radio Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Institute of Space Radio Technology filed Critical Xian Institute of Space Radio Technology
Priority to CN 201110214293 priority Critical patent/CN102262669B/zh
Publication of CN102262669A publication Critical patent/CN102262669A/zh
Application granted granted Critical
Publication of CN102262669B publication Critical patent/CN102262669B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及一种从汉语拼音到汉字内码的快速输出方法,步骤包括(1)用户使用标准计算机键盘输入汉字的汉语拼音字符串;(2)输入的汉语拼音字符串用一个6维向量a=(a1,a2,a3,a4,a5,a6)T表示,其中:分量aj=第j个字母的ASCII码值,1≤j≤6;当拼音字符串长度小于6时,向量的后续分量取值为0,使用公式

Description

一种从汉语拼音到汉字内码的快速输出方法
技术领域
本发明涉及计算机汉字输出技术领域,特别是涉及一种从汉语拼音到汉字内码的快速输出方法。
背景技术
从汉语拼音到汉字内码的快速输出方法,它主要包括3个部分:(1)用户使用通用计算机键盘输入汉语拼音字符串;(2)提取与该汉语拼音字符串对应的汉字内码的存储地址;(3)在汉字内码的存储地址读取汉字内码,然后将汉字显示在计算机显示器上
在公开刊物及公开渠道上了解到的从汉语拼音字符串到汉字内码存储地址的输出方法包括:
(1)多叉树法
匹配查询表以树的形式建立,查询表的第1部分包含了由a到z的各种读音的起始字母.每个字母紧邻的后续字节是以该字母为起始字母的拼音字符串的第2个字母的偏移地址,以此类推。所有各种读音以空格结束,空格后的字节指出该种读音的汉字内码所在区的绝对偏移量。
以拼音字符串an为例说明处理过程:在键盘上输入an,然后按下空格键.程序首先在匹配查询表的第1部分顺序查找,找到了字母a;并按字母a后字节给出的偏移地址找到所有以字母a为起始字母的各种读音的第2个字母,顺序查找,找到字母n;然后,按字母n后的字节所给出的偏移地址找到所有以字母an为头两个字母的各种读音的第3个字母,顺序查找,找到空格(Ox20)后即查询完毕.读出空格后的偏移地址.这样就找出了读音为an的所有汉字的汉字内码的存储地址。
此方法的处理速度较高,但内存使用量很大且搜索不同字符串所用的时间长短差异较大。
(2)线性表法
表1
Figure BSA00000546702200021
表1为线性法数据结构,表1所示数据结构是一张线性表,由若干表项构成。每个表项包括一个拼音字符串和与之对应的汉字内码的存储地址。当用户输入一个汉语拼音时,方法从第1个表项开始匹配查询,如果该表项的拼音字符串与输入的拼音字符串一致,则输出该表项的汉字内码的存储地址且方法停止;否则继续向后搜索第2个表项;依次类推,直到搜索到与输入的拼音字符串匹配的表项为止。
此方法内存使用较小,但搜索速度很低且搜索不同字符串所用的时间长短差异很大。
发明内容
本发明的目的在于克服现有技术的上述不足,提供是一种从汉语拼音到汉字内码的快速输出方法,该输出方法以拼音字符串为输入,计算与之对应的汉字内码的存储地址从而输出汉字,在使用内存较小的情况下搜索速度大大提高,从而大大提高了计算机汉字的输出速度。
本发明的上述目的是通过如下技术方案予以实现的:
一种从汉语拼音到汉字内码的快速输出方法,包括如下步骤:
(1)计算机汉字输入系统启动后,建立一个用于存放402个常用汉语拼音对应的汉字内码存储地址的匹配查询表,并为匹配查询表分配内存空间,所述匹配查询表的结构如下表所示:
Figure BSA00000546702200031
匹配查询表包括753行,行索引依次为0到752,每行包括三个字段:标示字符、地址1、地址2,其中地址1与地址2各存储1个汉语拼音对应的汉字内码的存储地址,标识字符用于存储地址1中对应的汉语拼音中第1个字母的ASCII码值;第0行的标识字符、地址1、地址2分别记为M0、P10、P20,第1行的标识字符、地址1、地址2分别记为M1、P11、P21,依次类推,第752行的标识字符、地址1、地址2分别记为M752、P1752、P2752,匹配查询表的初始值全部设为0;
(2)通过计算机汉字输入系统为所述建立的匹配查询表赋值,具体方法如下:
a)取第1个汉语拼音字符串,表示成6维向量形式(x11,x12,x13,x14,x15,x16)T,其中x11,x12,x13,x14,x15,x16分别为第1个汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数计算第1个汉语拼音字符串的函数值y(x1);
索引到步骤(1)中建立的匹配查询表的第y(x1)行,如果第y(x1)行的标识字符等于0,则在第y(x1)行的标识字符写入第1个汉语拼音字符串中第1个字母的ASCII码值x11,并在第y(x1)行的地址1写入第1个汉语拼音字符串对应的汉字内码的存储地址;如果第y(x1)行的标识字符不等于0,则第y(x1)行的标识字符不处理,仅在第y(x1)行的地址2写入第1个汉语拼音字符串对应的汉字内码的存储地址;
(b)取第2个汉语拼音字符串,表示成6维向量形式(x21,x22,x23,x24,x25,x26)T,其中x21,x22,x23,x24,x25,x26分别为第2个汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数
Figure BSA00000546702200041
计算第2个汉语拼音字符串的函数值y(x2);
索引到步骤(1)中建立的匹配查询表的第y(x2)行,如果第y(x2)行的标识字符等于0,则在第y(x2)行的标识字符写入第2个汉语拼音字符串中第1个字母的ASCII码值x21,并在第y(x2)行的地址1写入第2个汉语拼音字符串对应的汉字内码的存储地址;如果第y(x2)行的标识字符不等于0,则第y(x2)行的标识字符不处理,仅在第y(x2)行的地址2写入第2个汉语拼音字符串对应的汉字内码的存储地址;
(c)同理,依次对第3个、第4个......直至第402个常用汉语拼音字符串进行相同处理,完成对所述匹配查询表的赋值;
所述402个常用汉语拼音通过匹配查询函数计算出的函数值在有限集Y={0,1,2,...,752}范围内,1≤i≤402;
(3)计算机用户使用计算机标准键盘输入汉语拼音,计算机汉字输入系统获取输入汉语拼音的汉字内码的存储地址,然后在所述汉字内码的存储地址上读取汉字并显示在计算机显示器上,具体步骤如下:
d)计算机用户输入的汉语拼音字符串,用一个6维向量a=(a1,a2,a3,a4,a5,a6)T表示,其中a1,a2,a3,a4,a5,a6分别为所述汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数
Figure BSA00000546702200043
计算所述汉语拼音字符串的函数值y(a);
e)索引到步骤(2)中赋值后的匹配查询表的第y(a)行,如果第y(a)行的标识字符字段的数值等于所述汉语拼音字符串中第1个字母的ASCII码值a1,则第y(a)行的地址1字段中的数值就是计算机用户输入的汉语拼音对应的汉字内码的存储地址;否则第y(a)行的地址2字段中的数值为计算机用户输入的汉语拼音对应的汉字内码的存储地址;
f)在所述汉字内码的存储地址上读取汉字并显示在计算机显示器上。
在上述从汉语拼音到汉字内码的快速输出方法中,步骤(2)中完成赋值的匹配查询表中同一行的标识字符、地址1与地址2分为三种情况:1)标识字符、地址1与地址2均赋值;2)标识字符、地址1赋值,地址2为0;3)标识字符、地址1与地址2均为0;
当标识字符、地址1与地址2均赋值的情况下,表明有两个汉语拼音通过匹配查询函数
Figure BSA00000546702200051
计算出的函数值相同,均索引到第y(xi)行;当标识字符、地址1赋值,地址2为0的情况下,表明仅有一个汉语拼音通过匹配查询函数
Figure BSA00000546702200052
计算出的函数值,索引到第y(xi)行;当标识字符、地址1与地址2均为0的情况下,表明没有汉语拼音通过匹配查询函数
Figure BSA00000546702200053
计算出的函数值,能索引到第y(xi)行。
本发明与现有技术相比的优点在于:
(1)本发明使用拼音字符串中字母的ASCII码值经计算和比较获取对应的汉字内码的存储地址,省略了现有技术中逐个字母、逐个字符串的匹配过程,在使用内存较小的情况下搜索速度大大提高,从而大大提高了计算机汉字的输出速度;
(2)本发明对于不同的汉语拼音字符串,均表示成6维向量形式,当汉语拼音字符串长度小于6时,向量的后续分量取值为0,因此搜索过程所用时间都是确定的、相同的,有利于处理器资源占用情况的预测估计和分析;
(3)经实际测试,本发明汉字输出方法速度大大提高,时间大大减少,如下表2所示为本发明所处理方法、与已公开的多叉树法和线性表法,处理402个常用汉语拼音的时间总和对比表:
表2处理时间对比表
Figure BSA00000546702200061
具体实施方式
下面通过具体实施例对本发明作进一步详细的描述:
概念描述:
一个汉语拼音字符串可用一个6维向量a=(a1,a2,a3,a4,a5,a6)T表示,其中:分量aj=第j个字母的ASCII码值,1≤j≤6;当拼音字符串长度小于6时,向量的后续分量取值为0。例如拼音字符串zhuang表示为(122,104,,117,97,110,107)T,wang表示为(119,97,110,107,0,0)T
通常,常用汉语拼音有402个,可以表示为402个不同的向量,记为Xi,1≤i≤402,Xi的分量形式为(xi1,xi2,xi3,xi4,xi5,xi6)T
以xi为元素,定义有限集X={xi|1≤i≤402}。
以小于753的非负整数为元素,定义有限集Y={0,1,2,...,752}。
定义匹配查询函数:
y(xi)=(xi T·k)%753                           (1)
其中k=(255,254,253,252,251,250)T,通过穷举运算获得;“·”表示向量点积运算;“%”表示整数模运算;xi∈X,y(xi)∈Y。
函数y(xi)化简为标量形式:
y ( x i ) = ( Σ j = 1 6 25 6 - j x ij ) % 753 - - - ( 2 )
建立匹配查询表:
建立一个用于存放402个常用汉语拼音对应的汉字内码存储地址的匹配查询表,并为匹配查询表分配内存空间,匹配查询表的初始值全部设为0,匹配查询表的结构如下表3所示:
表3
匹配查询表包括753行,行索引依次为0到752,每行包括三个字段:标示字符、地址1、地址2,其中地址1与地址2各存储1个汉语拼音对应的汉字内码的存储地址,标识字符用于存储地址1中对应的汉语拼音中第1个字母的ASCII码值,第0行的标识字符、地址1、地址2分别记为M0、P10、P20,第1行的标识字符、地址1、地址2分别记为M1、P11、P21,依次类推,第752行的标识字符、地址1、地址2分别记为M752、P1752、P2752
通过实际的计算可知,402个汉语拼音通过匹配查询函数(式2)计算出的函数值在有限集Y={0,1,2,...,752}范围内,而且最多有2个不同的拼音计算出的函数值相同,所以表3所示的匹配查询表设计了753行,每行用2个地址字段存放2个汉语拼音的汉字内码存储地址。当2个不同拼音的汉字内码存储地址分别存入同一行的地址1和地址2字段时,该行的标识字符字段存入地址1对应的汉语拼音的第一个字母的ASCII码值。402个汉语拼音对应的汉字内码存储地址能够完整的存储在表3所示的匹配查询表中。
为建立的匹配查询表赋值:
a)取第1个汉语拼音字符串,表示成6维向量形式(x11,x12,x13,x14,x15,x16)T,其中x11,x12,x13,x14,x15,x16分别为第1个汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数
Figure BSA00000546702200081
计算第1个汉语拼音字符串的函数值y(x1);
索引到步骤(1)中建立的匹配查询表的第y(x1)行,如果第y(x1)行的标识字符等于0,则在第y(x1)行的标识字符写入第1个汉语拼音字符串中第1个字母的ASCII码值x11,并在第y(x1)行的地址1写入第1个汉语拼音字符串对应的汉字内码的存储地址;如果第y(x1)行的标识字符不等于0,则第y(x1)行的标识字符不处理,仅在第y(x1)行的地址2写入第1个汉语拼音字符串对应的汉字内码的存储地址;
(b)取第2个汉语拼音字符串,表示成6维向量形式(x21,x22,x23,x24,x25,x26)T,其中x21,x22,x23,x24,x25,x26分别为第2个汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数计算第2个汉语拼音字符串的函数值y(x2);
索引到步骤(1)中建立的匹配查询表的第y(x2)行,如果第y(x2)行的标识字符等于0,则在第y(x2)行的标识字符写入第2个汉语拼音字符串中第1个字母的ASCII码值x21,并在第y(x2)行的地址1写入第2个汉语拼音字符串对应的汉字内码的存储地址;如果第y(x2)行的标识字符不等于0,则第y(x2)行的标识字符不处理,仅在第y(x2)行的地址2写入第2个汉语拼音字符串对应的汉字内码的存储地址;
(c)同理,依次对第3个、第4个......直至第402个常用汉语拼音字符串进行相同处理,完成对匹配查询表的赋值;
完成赋值的匹配查询表中同一行的标识字符、地址1与地址2分为三种情况:
(1)标识字符、地址1与地址2均赋值(均不为0),表明有两个汉语拼音字符串(地址1与地址2对应的汉语拼音字符串)通过匹配查询函数
Figure BSA00000546702200091
Figure BSA00000546702200092
计算出的函数值相同,均索引到该行。
(2)标识字符、地址1赋值(不为0),地址2为0(未赋值),表明仅有一个汉语拼音字符串通过匹配查询函数
Figure BSA00000546702200093
计算出的函数值,索引到该行。
(3)标识字符、地址1与地址2均为0(均未赋值),表明没有汉语拼音字符串通过匹配查询函数计算出的函数值,能索引到该行。
实施例1
步骤(1)、在计算机汉字输入系统中,定义753行5列的字节型二维数组lookUpTable,行号从0到752,列号从0到4,初始值全为0。数组lookUpTable的每一行表示匹配查询表的一行,该行的第1个字节作为“标识字符”字段,第2个和第3个字节作为“地址1”字段,第4个和第5个字节作为“地址2”字段。二维数组lookUpTable的结构如表4所示。
表4
Figure BSA00000546702200095
步骤(2)、计算机汉字输入系统将402个常用汉语拼音与汉字内码存储地址的对应关系数据逐一写入步骤1)中定义的数组lookUpTable中,本发明中每个汉语拼音的写入方法步骤相同,均同上述“为建立的匹配查询表赋值”内容,下面以拼音zhuang为例进行说明:
设拼音为zhuang的汉字(例如:“装”,“状”)的内码存储地址为0x1122,zhuang用向量a=(a1,a2,a3,a4,a5,a6)T=(122,104,117,97,110,107)T表示,122、104、117、97、110、107分别是字母z、h、u、a、n、g的ASCII码值。
a)计算
y ( a ) = ( Σ j = 1 6 25 6 - j a j ) % 753
= ( 25 5 * 122 + 25 4 * 104 + 25 3 * 117 + 25 2 * 97 + 25 * 110 + 107 ) % 753
= 582
b)定位到数组lookUpTable的第582行,设此时数组lookUpTable第582行第1个字节lookUpTable[582][0](表4中字节1对应位置)等于0,则lookUpTable[582][0]写入122(拼音zhuang第一个字母z的ASCII码值),lookUpTable[582][1](表4中字节2对应位置)写入0x11,lookUpTable[582][2](表4中字节3对应位置)写入0x22,即将zhuang的内码存储地址0x1122写入表4的地址1字段。其中0x11为拼音zhuang对应的汉字内码存储地址的第1个字节,0x22为拼音zhuang对应的汉字内码存储地址的第2个字节。
否则如果数组lookUpTable第582行的第1个字节lookUpTable[582][0](表4中字节1对应位置)不等于0,则lookUpTable[582][0]不处理,lookUpTable[582][3](表4中字节4对应位置)写入0x11,lookUpTable[582][4](表4中字节5对应位置)写入0x22,即将zhuang的内码存储地址0x1122写入表4的地址2字段。
步骤(3)、计算机用户使用计算机标准键盘输入汉语拼音,计算机汉字输入系统运用本发明所述方法获取相应汉字内码的存储地址,然后在汉字内码的存储地址上读取汉字并显示在计算机显示器上。
下面仍以拼音zhuang为例进行说明:
zhuang用向量a=(a1,a2,a3,a4,a5,a6)T=(122,104,,117,97,110,107)T表示,zhuang对应的汉字内码存储地址用双字节变量ra表示。
a)计算
b = y ( a )
= ( Σ j = 1 6 25 6 - j a j ) % 753
= ( 25 5 * 122 + 25 4 * 104 + 25 3 * 117 + 25 2 * 97 + 25 * 110 + 107 ) % 753
= 582
b)定位到表4中数组lookUpTable的第582行,设此时数组lookUpTable第582行第1个字节lookUpTable[582][0]经步骤b)赋值以后等于122,则首先将lookUpTable[582][1](表4中字节2对应位置)的数值0x11写入ra,然后将lookUpTable[582][2](表4中字节3对应位置)的数值0x22写入ra,输出zhuang对应的汉字内码存储地址0x1122。
否则如果数组lookUpTable第582行第1个字节lookUpTable[582][0]不等于122,则首先将lookUpTable[582][3](表4中字节4对应位置)的数值0x11写入ra,然后将lookUpTable[582][4](表4中字节5对应位置)的数值0x22写入ra,输出zhuang对应的汉字内码存储地址0x1122。
最后在汉字内码的存储地址0x1122上读取汉字并显示在计算机显示器上。
本实施例步骤(2)将zhuang的第一个字母z的ASCII码值122写入lookUpTable[582][0],将zhuang对应的汉字内码的存储地址0x1122写入了lookUpTable[582][1]和lookUpTable[582][2],步骤(3)从lookUpTable[582][1]和lookUpTable[582][2]中读取汉字内码的存储地址0x1122。
实施例2
以拼音wang为例进行说明。
步骤(1)、首先描述拼音wang写入数组lookUpTable的过程:
设拼音为wang的汉字(例如:“网”,“王”)的内码存储地址为0x2345,wang用向量a=(a1,a2,a3,a4,a5,a6)T=(119,97,110,107,0,0)T表示,119、97、110、107分别是字母w、a、n、g的ASCII码值。
a)计算
y ( a ) = ( Σ j = 1 6 25 6 - j a j ) % 753
= ( 25 5 * 119 + 25 4 * 97 + 25 3 * 110 + 25 2 * 107 + 25 * 0 + 0 ) % 753
= 637
b)定位到数组lookUpTable的第637行,设此时数组lookUpTable第637行第1个字节lookUpTable[637][0](表4中字节1对应位置)不等于0,则lookUpTable[637][0]不处理,lookUpTable[637][3](表4中字节4对应位置)写入0x23,lookUpTable[637][4](表4中字节5对应位置)写入0x45,即将wang的内码存储地址0x2345写入表4的地址2字段。
否则如果数组lookUpTable第637行的第1个字节lookUpTable[637][0](表4中字节1对应位置)等于0,则lookUpTable[637][0]写入119(拼音wang第一个字母w的ASCII码值),lookUpTable[637][1](表4中字节2对应位置)写入0x23,lookUpTable[637][2](表4中字节3对应位置)写入0x45,即将wang的内码存储地址0x2345写入表4的地址1字段。其中0x23为拼音wang对应的汉字内码存储地址的第1个字节,0x45为拼音wang对应的汉字内码存储地址的第2个字节。
步骤(2)、下面描述计算机用户使用计算机标准键盘输入拼音wang,计算机汉字输入系统获取相应汉字内码的存储地址的过程如下:
a)计算
y ( a ) = ( Σ j = 1 6 25 6 - j a j ) % 753
= ( 25 5 * 119 + 25 4 * 97 + 25 3 * 110 + 25 2 * 107 + 25 * 0 + 0 ) % 753
= 637
b)定位到表4中数组lookUpTable的第637行,设此时数组lookUpTable第637行第1个字节lookUpTable[637][0]经步骤b)赋值以后不等于119,则首先将lookUpTable[637][3](表4中字节4对应位置)的数值0x23写入ra,然后将lookUpTable[637][4](表4中字节5对应位置)的数值0x45写入ra,输出wang对应的汉字内码存储地址0x2345。
否则如果数组lookUpTable第637行第1个字节lookUpTable[637][0]等于119,则首先将lookUpTable[637][1](表4中字节2对应位置)的数值0x23写入ra,然后将lookUpTable[637][2](表4中字节3对应位置)的数值0x45写入ra,输出wang对应的汉字内码存储地址0x2345。
最后在汉字内码的存储地址0x2345上读取汉字并显示在计算机显示器上。
本实施例步骤(1)wang的第一个字母w的ASCII码值119未写入lookUpTable[637][0],将wang对应的汉字内码的存储地址0x2345写入了lookUpTable[637][3]和lookUpTable[637][4],步骤(2)从lookUpTable[637][3]和lookUpTable[637][4]中读取汉字内码的存储地址0x2345。
以上所述,仅为本发明最佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
本发明说明书中未作详细描述的内容属于本领域专业技术人员的公知技术。

Claims (2)

1.一种从汉语拼音到汉字内码的快速输出方法,其特征在于包括如下步骤:
(1)计算机汉字输入系统启动后,建立一个用于存放402个常用汉语拼音对应的汉字内码存储地址的匹配查询表,并为匹配查询表分配内存空间,所述匹配查询表的结构如下表所示:
所述匹配查询表包括753行,行索引依次为0到752,每行包括三个字段:标示字符、地址1、地址2,其中地址1与地址2各存储1个汉语拼音对应的汉字内码的存储地址,标识字符用于存储地址1中对应的汉语拼音中第1个字母的ASCII码值;第0行的标识字符、地址1、地址2分别记为M0、P10、P20,第1行的标识字符、地址1、地址2分别记为M1、P11、P21,依次类推,第752行的标识字符、地址1、地址2分别记为M752、P1752、P2752,所述匹配查询表的初始值全部设为0;
(2)通过计算机汉字输入系统为所述建立的匹配查询表赋值,具体方法如下:
a)取第1个汉语拼音字符串,表示成6维向量形式(x11,x12,x13,x14,x15,x16)T,其中x11,x12,x13,x14,x15,x16分别为第1个汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数计算第1个汉语拼音字符串的函数值y(x1);
索引到步骤(1)中建立的匹配查询表的第y(x1)行,如果第y(x1)行的标识字符等于0,则在第y(x1)行的标识字符写入第1个汉语拼音字符串中第1个字母的ASCII码值x11,并在第y(x1)行的地址1写入第1个汉语拼音字符串对应的汉字内码的存储地址;如果第y(x1)行的标识字符不等于0,则第y(x1)行的标识字符不处理,仅在第y(x1)行的地址2写入第1个汉语拼音字符串对应的汉字内码的存储地址;
(b)取第2个汉语拼音字符串,表示成6维向量形式(x21,x22,x23,x24,x25,x26)T,其中x21,x22,x23,x24,x25,x26分别为第2个汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数
Figure FSA00000546702100021
计算第2个汉语拼音字符串的函数值y(x2);
索引到步骤(1)中建立的匹配查询表的第y(x2)行,如果第y(x2)行的标识字符等于0,则在第y(x2)行的标识字符写入第2个汉语拼音字符串中第1个字母的ASCII码值x21,并在第y(x2)行的地址1写入第2个汉语拼音字符串对应的汉字内码的存储地址;如果第y(x2)行的标识字符不等于0,则第y(x2)行的标识字符不处理,仅在第y(x2)行的地址2写入第2个汉语拼音字符串对应的汉字内码的存储地址;
(c)同理,依次对第3个、第4个......直至第402个常用汉语拼音字符串进行相同处理,完成对所述匹配查询表的赋值;
所述402个常用汉语拼音通过匹配查询函数
Figure FSA00000546702100022
计算出的函数值在有限集Y={0,1,2,...,752}范围内,1≤i≤402;
(3)计算机用户使用计算机标准键盘输入汉语拼音,计算机汉字输入系统获取输入汉语拼音的汉字内码的存储地址,然后在所述汉字内码的存储地址上读取汉字并显示在计算机显示器上,具体步骤如下:
d)计算机用户输入的汉语拼音字符串,用一个6维向量a=(a1,a2,a3,a4,a5,a6)T表示,其中a1,a2,a3,a4,a5,a6分别为所述汉语拼音字符串中六个字母的ASCII码值,当汉语拼音字符串长度小于6时,向量的后续分量取值为0;
使用匹配查询函数
Figure FSA00000546702100031
计算所述汉语拼音字符串的函数值y(a);
e)索引到步骤(2)中赋值后的匹配查询表的第y(a)行,如果第y(a)行的标识字符字段的数值等于所述汉语拼音字符串中第1个字母的ASCII码值a1,则第y(a)行的地址1字段中的数值就是计算机用户输入的汉语拼音对应的汉字内码的存储地址;否则第y(a)行的地址2字段中的数值为计算机用户输入的汉语拼音对应的汉字内码的存储地址;
f)在所述汉字内码的存储地址上读取汉字并显示在计算机显示器上。
2.根据权利要求1所述的一种从汉语拼音到汉字内码的快速输出方法,其特征在于所述步骤(2)中完成赋值的匹配查询表中同一行的标识字符、地址1与地址2分为三种情况:1)标识字符、地址1与地址2均赋值;2)标识字符、地址1赋值,地址2为0;3)标识字符、地址1与地址2均为0;
当标识字符、地址1与地址2均赋值的情况下,表明有两个汉语拼音通过匹配查询函数
Figure FSA00000546702100032
计算出的函数值相同,均索引到第y(xi)行;当标识字符、地址1赋值,地址2为0的情况下,表明仅有一个汉语拼音通过匹配查询函数
Figure FSA00000546702100033
计算出的函数值,索引到第y(xi)行;当标识字符、地址1与地址2均为0的情况下,表明没有汉语拼音通过匹配查询函数计算出的函数值,能索引到第y(xi)行。
CN 201110214293 2011-07-28 2011-07-28 一种从汉语拼音到汉字内码的快速输出方法 Active CN102262669B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110214293 CN102262669B (zh) 2011-07-28 2011-07-28 一种从汉语拼音到汉字内码的快速输出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110214293 CN102262669B (zh) 2011-07-28 2011-07-28 一种从汉语拼音到汉字内码的快速输出方法

Publications (2)

Publication Number Publication Date
CN102262669A true CN102262669A (zh) 2011-11-30
CN102262669B CN102262669B (zh) 2013-03-13

Family

ID=45009298

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110214293 Active CN102262669B (zh) 2011-07-28 2011-07-28 一种从汉语拼音到汉字内码的快速输出方法

Country Status (1)

Country Link
CN (1) CN102262669B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662491A (zh) * 2012-04-27 2012-09-12 清华大学 一种基于八叉树的拼音输入法
CN107274894A (zh) * 2017-05-19 2017-10-20 杭州仁盈科技股份有限公司 一种提高嘈杂环境下语音识别率的方法
CN112307277A (zh) * 2020-09-29 2021-02-02 西安赢瑞电子有限公司 一种汉字串匹配预判方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3014494A4 (en) * 2014-05-17 2017-03-15 Khalid Omar Thabit A method of searching text based on two computer hardware processing properties: indirect memory addressing and ascii encoding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1287322A (zh) * 1999-09-03 2001-03-14 英业达集团(上海)电子技术有限公司 多内码转换系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1287322A (zh) * 1999-09-03 2001-03-14 英业达集团(上海)电子技术有限公司 多内码转换系统

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
《河南大学学报(自然科学版)》 19910930 郑逢斌 "汉字拼音输入码到内码转换的一种新方法" 31-35 1 第21卷, 第3期 *
《河南教育学院学报(自然科学版)》 19990630 安军,赵峰 "用索引技术实现拼音输入法的汉字查找" 84-86 1 第8卷, 第2期 *
《计算机与现代化》 20061231 赵斌,顾彦慧 "采用Java 实现的汉语拼音查询模块" 51-52 1 , 第136期 *
安军,赵峰: ""用索引技术实现拼音输入法的汉字查找"", 《河南教育学院学报(自然科学版)》 *
赵斌,顾彦慧: ""采用Java 实现的汉语拼音查询模块"", 《计算机与现代化》 *
郑逢斌: ""汉字拼音输入码到内码转换的一种新方法"", 《河南大学学报(自然科学版)》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662491A (zh) * 2012-04-27 2012-09-12 清华大学 一种基于八叉树的拼音输入法
CN102662491B (zh) * 2012-04-27 2014-11-26 清华大学 一种基于八叉树的拼音输入法
CN107274894A (zh) * 2017-05-19 2017-10-20 杭州仁盈科技股份有限公司 一种提高嘈杂环境下语音识别率的方法
CN112307277A (zh) * 2020-09-29 2021-02-02 西安赢瑞电子有限公司 一种汉字串匹配预判方法

Also Published As

Publication number Publication date
CN102262669B (zh) 2013-03-13

Similar Documents

Publication Publication Date Title
CN106570456B (zh) 基于全卷积递归网络的手写汉字文本识别方法
Wolf et al. ITS2, 18S, 16S or any other RNA—simply aligning sequences and their individual secondary structures simultaneously by an automatic approach
CN109844729A (zh) 通过示例利用预测性粒度修改来合并
CN102262669B (zh) 一种从汉语拼音到汉字内码的快速输出方法
CN105051741A (zh) 并行局部序列对齐
CN104899596A (zh) 一种多标签分类方法及其装置
CN109214429A (zh) 基于矩阵引导正则化的局部缺失多视图聚类机器学习方法
CN101261554A (zh) 公式、表达式的手写输入及计算系统和方法
CN105354532A (zh) 一种基于手部运动帧数据的手势识别方法
CN110110035A (zh) 数据处理方法和装置以及计算机可读存储介质
Wang et al. Multivariate time series similarity searching
US10438690B2 (en) Associative memory and data searching system and method
Li et al. DeepOMe: a web server for the prediction of 2′-O-Me sites based on the hybrid CNN and BLSTM architecture
CN109215737A (zh) 蛋白质特征提取、功能模型生成、功能预测的方法及装置
Khotimah et al. Alphabet sign language recognition using leap motion technology and rule based backpropagation-genetic algorithm neural network (Rbbpgann)
Tang et al. Online chemical symbol recognition for handwritten chemical expression recognition
CN113283354B (zh) 一种分析眼动信号行为的方法、系统及存储介质
Fukuyama Adaptive gPCA: A method for structured dimensionality reduction
CN113836378A (zh) 一种数据处理方法及装置
RU2008111851A (ru) Способ унифицированной семантической обработки информации, обеспечивающий в рамках одной формальной модели представление, контроль семантической правильности, поиск и идентификацию описаний объектов
Jang et al. Itercqr: Iterative conversational query reformulation without human supervision
Sundaram et al. Language models for online handwritten Tamil word recognition
JP2013171441A (ja) 文字認識用識別器学習装置、方法、文字認識装置、方法、及びプログラム
Sari et al. Mining biological information from 3d medulloblastoma cancerous gene expression data using timesvector triclustering method
CN109948592A (zh) 一种基于手势信号识别的设计意图判别方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant