本发明专利技术公开了一种利用汉字进行大数值标识的方法,它包括如下步骤:读取大数值十进制数字串;将读取的大数值十进制数字串转换成汉字串;保存该汉字串,并用该汉字串标识原先的大数值十进制数字串;当需要依据汉字串得到十进制大数值数字串时,输入标识该大数值十进制数字串的的汉字串;将输入的汉字串转换成十进制数字串即可。本发明专利技术通过几位汉字能够表达出十几位的数字信息,从而能通过有限少的汉字标识出庞很大的数值或很长的数字码;简短的几个汉字符合中国人的识别和记忆习惯,从而为商品查询提供了更好的标识方式。
【技术实现步骤摘要】
本专利技术涉及,即通过汉字串表示一个长串数字,从而能够利用汉字对数字码进行识别。
技术介绍
目前,对数值或一串数码进行标示的方法主要是数字标识和英文字符标识两种方法。这两种方法都有以下的弊病1.对于非常大的数值进行标识时,标识的数字或字符长度就非常长,往往不易识别或记忆。2.需要通过计算机、手机等形式录入数值编码时(例如记录商品的编码),不方便,容易出错。
技术实现思路
专利技术目的本专利技术的目的是提供一种利用汉字进行大数值十进制数标识方法,通过本专利技术的方法,能够用较短的几位汉字,标识出一个很大的数值或很长的数字,从而能够方便地进行数值的识别和查询。为了解决上述技术问题,本专利技术采用了如下的技术方案—种利用汉字进行大数值标识的方法,它包括如下步骤(1)读取大数值十进制数字串;(2)将读取的大数值十进制数字串转换成汉字串;(3)保存该汉字串,并用该汉字串标识原先的大数值十进制数字串;(4)当需要依据汉字串得到十进制大数值数字串时,输入标识该大数值十进制数字串的的汉字串;(5)将输入的汉字串转换成十进制数字串即可。其中,步骤⑵包含了如下步骤A)、计算该大数值十进制数值对应的汉字串中的每个汉字对应的编码值,先计算汉字串中右边第一位的汉字对应的编码值D1 D1 =〔mod(d,(U"N))〕+(U"(N_1))其中d为待转换的大数值十进制数值,U为汉字编码位序表中汉字的总数目;U~N 表示U的N次幂运算;mod (d,(U "N))表示取余数运算,即将d除以(U "N)后,取剩下的余数;然后余数再除以(U~ (N-I)) ;N表示该汉字在目标汉字串中从右到左的位数,右边第一位汉字对应的N取值为1 ;B)、根据D1在汉字编码位序表中得到右起第一位汉字C1, C1位于汉字编码位序表中的第DJl位;C)、从十进制数值d中去掉已经得到的右起第一位汉字所代表的十进制位数值Y1, 得到剩余的第二个待转换的十进制数值d2,即d2 = Cl-Y1十进制位数值的计算公式Yn = DnX (U" (N-I))N是该汉字在汉字串中的从右向左的位数,Dn是该位汉字在汉字编码位序表中的编码值,U表示进制值,即汉字在编码位序表中的总数目;右起第一位汉字C1的十进制位数值Y1 = D1X (U" (1-1))D)、根据d2计算右起第二位汉字对应的编码值D2 D2 =〔mod(d2,(U"N))〕+ (U" (N-I))右起第二位汉字C2对应的N取值为2 ;根据计算得到的编码值D2,取对应的汉字 C2,即右起第二位汉字C2位于汉字编码位序表中的第A+1位;同上述步骤C),从d2中去掉右起第二个汉字对应的十进制位数值,得到进行右起第三位汉字时的第三个待转换十进制数值d3,再同上述步骤D)根据d3计算右起第三个汉字对应的编码值D3,从而由其得到右起第三个汉字C3 ;E、重复上述C)、D),依次计算得到各个位上汉字对应的编码值Dn,依据Dn在汉字编码位序表中找到对应的汉字Cn ;F、当待转换十进制数值去掉已经得到的右起第N位汉字所代表的十进制位数值后等于0时,转换过程结束;将计算得到的所有汉字C” C2、(V··Cn,按照位数从右到左依序组成汉字串,即得到标识原十进制数字串的汉字串。其中,步骤(5)中将汉字串转换成数字串包括如下步骤A、从右边第一位汉字开始,依次计算每个汉字标示的十进制位数值& ;Yn = DnX (U" (N-I)) N是该汉字在汉字串中的从右向左的位数,Dn是该位汉字在汉字编码位序表中的编码值,计算该位汉字所标示的十进制数的位数值\,其中U表示进制值,即汉字在编码位序表中的总数目;B、将上述各位上的汉字对应的位数值&累加得到该汉字串对应的十进制数值d, 即将该汉字串转换成对应的十进制数值d d = Y^Y2+'"+Yn其中,所述的汉字编码位序表是由有限个汉字组成,且在汉字编码位序表内的汉字组成以及其在汉字编码位序表中的位置固定不变。其中,所述的汉字编码位序表中的汉字至少是由500个以上的汉字组成。有益效果1.应用范围广。本专利技术主要应用于商品流通、物流等领域,也可应用于需要大数值进行编码标识以及进行信息沟通的其他应用领域,如用短信进行数字信息交互时,用汉字能够简化内容,方便输入;用身份证号码等长串数字的标识;能够通过汉字编码简化编码,方便记忆和查询。2.信息含量大。几位汉字能够表达出十几位的数字信息,从而能通过有限少的汉字标识出庞很大的数值或很长的数字码。3.容易识别记忆,简短的几个汉字符合中国人的识别和记忆习惯,从而为商品查询提供了更好的标识方式。附图说明图示为本专利技术的流程图。 具体实施例方式本专利技术提出的一种通过汉字进行大数值的编码标识的方法,通过一个汉字编码位序表作为汉字码的汉字来源。首先来介绍一下编码依据的汉字编码位序表。汉字编码位序表内由常用的有限个汉字组成,汉字编码位序表内的汉字组成固定不变,同时汉字编码位序表内的汉字排序也固定不变。汉字编码位序表中汉字按照固定的顺序排列,每个汉字依据其在编码表中的顺序拥有一个唯一的位编码值。汉字编码位序表中的汉字至少是由500个以上的汉字组成,当需要标识越大的十进制数值时,汉字编码位序表中的汉字数量就越多。汉字串从右向左表示数值从低向高进位,最右边的汉字是最低位,最左边的汉字是最高位。每个汉字在汉字串中都有一个位数N,当N等于1时,表示该汉字位于汉字编码串的最低位,即处于汉字编码串的最右边;N等于2时,表示该汉字位于处于汉字编码串的从右数第二个位置。依次类推,依次向左,位数依次加1。同时汉字串中的每各汉字都有一个编码值D,即该汉字在汉字编码位序表中的顺序号。最小的编码值D = 0,表示该汉字位于汉字编码位序表中的第一个;最大的编码值D=U-1,表示该汉字位于汉字编码位序表中的最后一个。U是汉字编码位序表中汉字的总数目。例如表1所示为IOM个常用汉字按照固定顺序组成的汉字编码位序表,从第一个汉字到第IOM个汉字,每个汉字按照其在汉字编码位序表中的顺序号就拥有了 0-1023之间的任意一个数值作为编码值。这样,通过汉字编码位序表中的汉字就能够表达0-1023之间的任意一个十进制数值。汉字编码位序表中的第一个汉字的编码值为0,第二个汉字的编码值为1,第三个汉字的编码值为2....以此类推,第IOM的汉字的编码值为1023 ;表1 的总数目U为10M。本专利技术中利用汉字进行大数值标识的方法包括如下步骤1、读取大数值十进制数字串。2、把读取到的大数值十进制数值转换成转换成汉字串,每个十进制数值都能转换成由几个汉字码组成的汉字串,且十进制数值和汉字串之间存在唯一的一一对应关系。具体从十进制数字串得到汉字串的转换计算方法如下1)依据十进制数,从右向左依次计算该大数值十进制数值对应的汉字串的各位上汉字的编码值DnDn = (mod (d,(U"N))〕+ (U~ (N-I)),其中,N是当前计算汉字码在目标汉字串中的位数,N为自然数,N= 1,2,.... ;d是待转换的十进制数值,U是汉字编码位序表中汉字的总数目。即,当前位汉字码的编码值是待转换的十进制数值除以U的N次幂后得到的余数,再将余数除以U的N-I次幂。所以最先计算的是右边第一位汉字C1对应的编码值D1,此时N取值1,所以D本文档来自技高网...
【技术保护点】
1.一种利用汉字进行大数值标识的方法,其特征在于它包括如下步骤:(1)读取大数值十进制数字串;(2)将读取的大数值十进制数字串转换成汉字串;(3)保存该汉字串,并用该汉字串标识原先的大数值十进制数字串;(4)当需要依据汉字串得到十进制大数值数字串时,输入标识该大数值十进制数字串的的汉字串;(5)将输入的汉字串转换成十进制数字串即可。
【技术特征摘要】
【专利技术属性】
技术研发人员:朱文和,
申请(专利权)人:无锡市音信飞信息技术有限公司,
类型:发明
国别省市:32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。