著录项信息
专利名称 | 汉语语音码计算机汉语编程方法 |
申请号 | CN201010564045.3 | 申请日期 | 2010-11-26 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2012-05-30 | 公开/公告号 | CN102479078A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F9/44 | IPC分类号 | G;0;6;F;9;/;4;4;;;G;0;6;F;3;/;0;2;3查看分类表>
|
申请人 | 苗玉水 | 申请人地址 | 青海省西宁市青海生物科技产业园区经四路26号孵化楼510室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 青海汉拉信息科技股份有限公司 | 当前权利人 | 青海汉拉信息科技股份有限公司 |
发明人 | 苗玉水 |
代理机构 | 暂无 | 代理人 | 暂无 |
摘要
本发明是一种计算机或可移动嵌入式计算机系统的汉语语音码计算机汉语编程方法,属于计算机或可移动嵌入式计算机汉语编程语言技术领域。通过这种方法可以方便地用汉字或汉语拼音或汉语语音码来进行计算机或可移动嵌入式计算机汉语软件编程,给计算机或可移动嵌入式计算机汉语软件编程提供了极大的便利。
汉语语音码计算机汉语编程方法\n[0001] 一、所属技术领域\n[0002] 本发明是一种计算机或可移动嵌入式计算机系统的汉语语音码计算机汉语编程方法,属于计算机或可移动嵌入式计算机汉语编程语言技术领域。\n[0003] 二、背景技术\n[0004] 二十世纪四十年代起,计算机的飞速发展在全球范围内引起了一场以电子计算机为中心的第三次技术革命,它把人类从繁重的脑力劳动中解放出来,开创了人类智力解放的新纪元。\n[0005] 众所周知,计算机是通过处理各种符号,特别是通过处理128个ASCII码的方法来进行各种字符信息处理的,由于26个拉丁字母包含在128个ASCII码的码符集内,因此,使用\n26个拉丁字母以英文为代表的拼音文字的国家能够顺利地进行这次新技术革命,从飞跃发展的经济中得到好处。\n[0006] 就计算机程序语言来说已经经历了五代,目前第四代第五代还在不断发展中:\n[0007] 第一代编程语言(机器语言——Machine language)也就是人们通常所说的:机器码。 机器码是可被中央处理器(CPU)加载并执行的由0和1组成的序列。\n[0008] 由于硬件处理器的不同,所以机器码序列也会是不一样的。可以讲,机器码是处理器 (CPU)可识别的唯一语言,并且是执行速度最高的语言。它也是与计算机的硬件(CPU)有着最为直接的关系的一种语言。\n[0009] 第二代编程语言(汇编语言——Assembly language)是从机器语言中抽象提炼出来的使用缩写或助记符进行编程的低级计算机编程语言,所谓低级是指它提供了较少的控制指令和数据类型,其中的每一条语句都对应于一条相应的机器指令(代码),通过汇编程序开发环境中的编译器可以将汇编语言翻译成机器语言,与机器语言一样,汇编语言同样与给定的处理器相关。\n[0010] 汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。用汇编语言所能完成的操作不是一般高级语言所能实现的,而且源程序经汇编生成的可执行文件不仅比较小,而且执行速度很快。\n[0011] 第三代编程语言(高级语言——High-Level Programming language)是从低级的汇编语言抽象而来的更高级计算机程序语言。高级语言通常使用和英文单词类似的关键词,这些关键词可以被翻译成多条机器指令。事实上,比汇编语言高级的计算机语言都可以看成是高级语言。\n[0012] 这些语言中C语言大概是目前最为广泛使用的高级语言。它既具有一般高级语言的特性,同时又具备了一些低级语言特性(某些汇编语言的特点)。此外高级语言还有很多种比如像我们所熟悉的:面向对象的C++、Java及具有可视化编程环境的VC、VB、Delphi等等。\n[0013] 以上每种高级语言都具备属于自己的编译器(Compiler)或解释器\n(Interpreter),使计算机的程序设计更加简单、有效。\n[0014] 第四代编程语言(面向问题语言——Problem-oriented Programming language)该语言更接近人类的语言或自然语。通常认为第四代编程语言具有简单易学,用户界面良好,非过程化程度高,面向问题,只需告知计算机“做什么”,而不必告知计算机“怎么做”。\n[0015] 第五代语言(人工智能语言——Artificial intelligence language)有些专家将第五代语言定义为允许程序员使用图形或可视化工具,而不是输入成行的代码来构建程序的语言。第五代语言重在目标而非过程,重在描述而非实现。\n[0016] 从上面的计算机语言的发展阶段,可以看出它是从低级向高级发展,从模仿机器到向模仿人类的方向发展。\n[0017] 在上面所介绍的前三代计算机语言中,我们清楚的看到它们都是基于传统的字符模式进行编程(这里我们把机器语言也视为字符)。基于字符模式编程也就是人们常说的基于文本的编程。据业内权威部门统计,当前的程序设计还是以基于字符模式的编程为主,占有绝对的统治地位。字符模式编程是基于ASCII字符编码为主体的,ASCII开始是一个美国标准,后来发展成为国际标准。字符模式编程的基本语言基础为表达英语信息的英文。从形式上讲,编程语言进化到现在,已经有一套以英文关键字为特征的符号系统。这使得非英语区域的人学习和使用会感到非常不方便。比如印度与中国相比由于印度的母语为英语,所以它们学习使用编程语言就会很便利,使其可以迅速发展为软件大国,中国人相对困难些。\n从中可以看出实际上使用母语来学习和进行编程肯定是个利好的因素。\n[0018] 由于我国记录汉语使用的是方块表意汉字或汉语拼音,众所周知方块表意汉字的计算机机内码不在128个ASCII码的码符集内,而汉语拼音还存在几个不便于计算机信息处理的弊病,比如:第一拼式太长,第二五个声调(含一个轻声)没有字母化且不在ASCII码的范围内,第三汉语单词音节的声、韵、调没有便于计算机信息处理的从左到右的一维线性排列,而是上下排列,第四如果没有非字母化的汉语拼音隔音节符号的隔音节帮助,汉语拼音在以词为单位连写时,音节和音节之间往往容易发生混淆,产生混音现象。所有这些都不便于计算机对汉语信息的处理。由于自身的这些不足,它们不能作为一种拼音文字,这就给用汉语关键词来作为计算机或可移动嵌入式计算机系统的软件计算机汉语编程带来很大的麻烦,目前所有汉语信息只能用汉字或《汉语拼音方案》中的汉语拼音表示,由于汉字和汉语拼音与ASCII码不能100%兼容,使得表示汉语信息的字符不能在纯西码也即ASCII码系统系统中显示和运行,要解决这个问题必须首先要发明一种用26个字母拼写汉语的编码技术。\n[0019] 对用26个拉丁字母表示的汉语信息的问题,众多专家,学者在这方面进行了研究和探索,但是由于汉语是一种有声调的非常特别的语言,要想用且仅用26个拉丁字母,就能够对包含汉语的22个声母(含一个零声母),38个韵母,5个声调(含一个轻声)进行编码,而且为了让任意多的音节被连写在一起后,音节与音节之间不能发生混淆,产生混音现象,每一个音节里还必须隐含一个隔音节符号,这样就使得该技术方案的难度非常大,这也是长期以来这个问题一直没得到有效解决的根本原因。\n[0020] 由于长期以来未能发明出用26个拉丁字母表示的汉语信息的方法,因此,更没有人能够发明出建立在这基础之上的将汉语语音码表示的汉语信息用来编写计算机或可移动嵌入式计算机系统的软件编程方法,进而形成一种既能在计算机汉字系统中运行,又能够在纯西码也即ASCII码系统系统中显示和运行的计算机汉语编程语言。\n[0021] 比如,目前中国人推出的汉语编程语言大体分为四类:\n[0022] 第一类是汉化了其他编程语言而形成的,如:“中蟒”,就是汉化了Python语言;“易乐谷”是汉化了的LOGO语言;“丙正正”是汉化了的C++,“EMS”就是汉化了的Visia Compiler。\n[0023] 第二类就是自主研发了汉语内核的,如:“易语言”,“易语言.飞扬”等,汉语可被直接编译为机器码;“易脚本”、“世宝脚本”是自主开发的脚本语言。\n[0024] 另一类是以汉语为基础,搭建式或区别于传统编程的工具,如:搭建之星,网站搭建者,华罗庚(MISD),雅奇MIS等。\n[0025] 第四类 是中国人编写的程序语言翻译软件,包括正向翻译(将中文代码翻译成标准英文代码)反向翻译(将标准英文代码翻译成中文代码),属于应用级编程辅助软件。是一款专门针对程序语言的翻译软件。如:十十视程序语言翻译软件。\n[0026] 应该说所有的这些软件对汉语编程都起到了极大的推动作用,但这些汉语编程计算机语言无一例外用的是汉字来进行计算机软件编程,由于汉字不是表音文字,因此,严格来说以上这些编程应该叫汉字编程或中文编程,而不能称作为汉语编程。\n[0027] 又由于汉字内码系统不在128个ASCII码符集内,因此,用汉字进行的编程程序不能在世界通用的由128个字符组成的纯ASCII码计算机系统中运行。要解决这个问题必须首先解决汉语用26个字母表达的问题,并在这基础上通过一定的方法才能建立起汉语计算机编程语言。\n[0028] 三、发明内容\n[0029] 本发明的目的是提供一种全新的,在将汉字汉语拼音可逆地转换成一种用且仅用\n26个拉丁字母以词为单位的汉语语音码的方法的基础上,通过将英文计算机编程语言的关键词和语句及其组成语句的关键词,根据它们的意义或功能翻译转换成汉语语音码表示的关键词和关键词组成的语句,其它原来程序语言的符号和各种编程规定规则保持不变的方法来解决以上用汉语语音码在纯西码也即ASCII码系统中用汉语来编程的问题。\n[0030] 具体来说本发明方法所采用的汉语语音码,它用且仅用26个拉丁字母作为码元,以词为单位采用按词连写的方式对组成词的每一音节的声、韵、调先进行编码转换,再依照“声码+介码+韵码+调码兼隔音节符号”的顺序进行编码,由于26个拉丁字母属于128个ASCII码码符集范围内,因此,一旦传统用于表示汉语信息的汉字和汉语拼音转换成该种汉语语音码后,世界上一切用于处理西码也即ASCII码系统的所有软硬件资源都可以不加改造地用于处理汉语语音码所表达的汉语及计算机汉语编程语言信息。\n[0031] 四、具体实施方式\n[0032] 下面结合实施例对本发明的具体实施方式作进一步的说明。\n[0033] (一)本技术方案所采用的汉语语音码的每一音节声、韵、调的编码方法采用以下的方法:\n[0034] 注:括号内的符号均为《汉语拼音方案》中的汉语拼音符号,以下简称为汉语拼音符号,不带括号的字母为本方案所采用的汉语语音码的每一音节声、韵、调的编码符号,以下将下列对照表简称为码表;\n[0035] 1、声码的编码符号采用与汉语拼音方案基本一致的声母的字母符号,包括采用下面这种声码的编码形式:\n[0036] b(:b) p : (p) m(:m) f(:f) d(:d) t(:t)[0037] n(:n) l(:l) g(:g) k(:k) h(:h)\n[0038] j: (zh)(,j) q(:ch)(,q) x(:sh)(,x) r(:r)[0039] z(:z) c(:c) s(:s) y(:y) w(:w)\n[0040] 2、汉语拼音介母(ü)采用26个拉丁字母中的一个字母表示,包括采用下面这种介码的编码形式:\n[0041] i(:i) u(:u) y(:ü)\n[0042] 3、韵码的编码,对单韵母除(ü)采用26个拉丁字母中的一个字母表示外,其它采用与汉语拼音相同的字母符号,汉语拼音的复合韵母采用辅音字母编码,包括采用下面的这种字母符号来对汉语拼音的韵母进行编码:\n[0043] a(:a) o(:o) e(:e) i(:i) u(:u) y(:ü)\n[0044] k(:ao) c(:ai) s :(an) x(:ou) w(:ei) n(:en)\n[0045] z(:ua) l(:uo) b(:ang) d(:ong) p(:eng)\n[0046] q(:ing) g(:ng) er(:er) er为无声母韵母\n[0047] r(:i) [只与(zh)、(ch)、(sh)相拼]\n[0048] 4、调码的编码除采用一个汉语不用的辅音字母v表示汉语拼音的上声(∨)外,其它声母采用元音字母来表示汉语的声调,包括采用下面的字母来对汉语拼音的声调进行编码:\n[0049] a : (-)阴平 e(:/)阳平 v(:∨)上声 u(:\)去声 o(:不标)轻声[0050] (二)利用上述编码的汉语语音码汉语信息表示采用如下的方法:\n[0051] 以单词为单位,这里将单个汉字看作单音节词,根据组成该单词的每个音节的《汉语拼音方案》中的拼音,依次按“声码+介码+韵码+调码兼隔音节符号”的顺序编码,同一个单词的多个音节不用空格隔开连写,单词与单词之间的编码用空格隔开,当汉语信息表示处于汉语语音码状态时,其六种点号,七种标号和一个移行号采用与英文相同的形式。\n[0052] 在用汉字、汉语拼音或汉语语音码进行编程时,首先将编程用的计算机编程语言的关键词和语句及其组成语句的关键词,根据它们在汉语中的意义翻译成用汉字或汉语语拼音表达的关键词汉语信息,并建立一一对应的关键词对照表预先储存在计算机中。\n[0053] 当编程用的计算机编程语言的关键词和语句及其组成语句的关键词,根据它们在汉语中的意义翻译成汉字或汉语拼音关键词后,当还需要得到与编程用的计算机编程语言的关键词和语句及其组成语句的关键词一一对应的汉语语音码关键词时,该翻译得到的汉字或汉语拼音关键词还要进一步转换成汉语语音码关键词,在汉字关键词或汉语拼音关键词转换成汉语语音码关键词时,既可以采用人工的方法,也可以采用汉字和汉语拼音与汉语语音码双向转换模块自动转换成汉语语音码。\n[0054] 采用人工的方法转换时先将汉字以词为单位转换成以词为单位的汉语拼音,然后根据步骤A中的码表将以词为单位的汉语拼音转换成以词为单位的汉语语音码,如果原来就是汉语拼音表示的汉语信息,则直接根据步骤A中的码表转换成以词为单位的汉语语音码。\n[0055] 采用汉字和汉语拼音与汉语语音码双向转换模块自动转换成汉语语音码时,汉字先转换成汉语拼音,遇异音同形字时将可能的汉语拼音全部列出,汉语拼音则无须先转换,然后再根据步骤A中的码表先转换成相对应的汉语音节语音码串,然后再查词库进行按词切分。\n[0056] 对包括异音字引起的多种单词切分,可以依据汉语词法句法上下文联系及统计规律等手段先进行判别后再进行单词分割,对已经分过词的汉字和汉语拼音转换成汉语语音码后则不必再进行单词切分,仍以原来的单词为单位进行转换,上述分割出的单词采取同一单词的音节与音节之间连写,词与词之间空格的方式表示。\n[0057] 具体自动转换方式采用以下方法,比如:\n[0058] 1、将需要转换的汉字和汉语拼音转换成汉语语音码:\n[0059] 对汉字首先将汉字通过查预先储存在计算机中的汉字与汉语拼音对照表的方式转换成对应的汉语拼音:\n[0060] 比如:我们会使用汉语拉丁文。转换成拼音后成为:\n[0061] wǒ men huì shǐ yòng hàn yǔ lā dīng wěn。\n[0062] 对由汉字转换过来的或原有的汉语拼音则通过以上汉语拼音和语音码码表对照表将汉语拼音转换成如下汉语语音码串。\n[0063] v mno huiu xrv ydu hsu yyv laa dqa wnv(. 音节和音节之间用空格隔开)[0064] 或wovmnohuiuxrvyduhsuyyvlaadqawnv. (音节和音节之间不用空格隔开)\n[0065] (熟练后mno中的轻音符o在不引起混音时可以省略,以上以下均同。)\n[0066] 为了让大家看清楚,这里将表示声调的字母加了下划线,语音码中的声调字母同时具隔音节作用,实际语音码中声调无下划线,熟练语音码后,声调兼隔音节符能够方便区分出来。\n[0067] (3)将语音码串进行分词切割,最终完成汉语语音码转换。\n[0068] 通过查找预先分好词的汉语语音码单词词库,将同一个单词的多个音节连写,词与词之间用空格隔开便得到以下我们最终需要的汉语语音码:\n[0069] wovmno huiu xrvydu hsuyyv laadqawnv.\n[0070] 2、汉语语音码转换成汉字和汉语拼音:\n[0071] 通过分别查找预先储存在计算机中的汉语语音码与以词为单位的汉字和汉语拼音对照表可以方便地将汉语语音码转换成汉字和汉语拼音,比如:\n[0072] wovmno 通过查声码、介码、韵码、调码和汉语拼音对照表或根据该对照表生成的汉语语音码音节或单词和拼音音节或单词对照表得到wǒmen,再通过wǒmen查找到以词为单位的汉字,当以单词为单位的语音码通过以单词为单位的汉语拼音与以单词为单位的汉字建立对应关系后,一旦需要以单词为单位的语音码可以不再需要通过以单词为单位的汉语拼音,直接与以单词为单位的汉字建立对应关系并实行相应的转换。比如: wovmno 可以转换为wǒmen,再通过wǒmen可以转换成 “我们”,这样wovmno和“我们”便直接建立了对应关系,需要时可以不通过汉语拼音wǒmen进行转换,而直接在wovmno和“我们”之间实现双向可逆转换。\n[0073] 遇同音词时,可以依据汉语词法句法上下文联系及统计规律等手段进行判别后进行以词为单位的汉字选定。比如:yxvlune 上装满了邮包。yxvlune上装满了原油。结合上下文的联系可以知道:前面一句中的“yxvlune”代表邮轮,后面一句中的“yxvlune” 代表油轮,这两句话分别会转换成“邮轮上装满了邮包”和“油轮上装满了原油”。对其它单词情况也依次类推。\n[0074] 在汉语信息表示处于汉语语音码状态时,所采用的标点符号及其用法与英文标点符号及其用法相同。本发明所采用的与英语相同的六种点号、七种标号和一个移行号为:\n[0075] 六种点号:句号“.”、问号“?”、感叹号“!”、逗号“,”、冒号“:”、分号“;”。\n[0076] 七种标号:引号“ ” 、括号( ) 、破折号 - 、省略号… 、着重号 . 、书名号(( ))、间隔号. 。\n[0077] 一个移行号:移行号“-” 。\n[0078] 任何计算机和可移动嵌入式计算机系统软件程序都是一个文本文件,在用汉语进行计算机和可移动嵌入式计算机系统软件编程时,可以用与编程用的用英文表示的关键词和语句及其组成语句的关键词一一对应的汉字关键词或汉语拼音关键词或汉语语音码关键词进行编程,其它非关键词的编程内容和字符表达方式不变,作为源程序的文本文件在进行编译前,计算机先根据预先储存在计算机中的与英文关键词和语句及其组成语句的关键词一一对应的汉字或汉语拼音或汉语语音码关键词对照表,将与英文表示的关键词和语句及其组成语句的关键词一一对应的汉字关键词或汉语拼音关键词或汉语语音码关键词批量转换成原来转换前编译系统能够编译的相对应的关键词和语句及其组成语句的关键词,一般该关键词和语句及其组成语句的关键词用英文表示,其它未列入关键词对照表的非关键词的编程内容和字符不变,转换完成后再按照原来的计算机软件编译方式进行编译,并交计算机执行。比如,以计算机C语言为例:\n[0079] 对下列计算机C语言的源代码:\n[0080] #includ //将输入输出函数所在的头文件stdio.h包含到当前的源程序中\n[0081] void main() //返回值为空的程序主函数,每个程序都从这个函数起点开始执行\n[0082] { //该半花括号是main函数的函数体的开始部分\n[0083] Printf(“我们会使用汉语拉丁文。”); //将括号中双引号之间的字符显示在显示屛上\n[0084] } //该半花括号是main函数的函数体的结束部分\n[0085] 源代码中带//的是注释行符号,以//开始的内容为程序的注释,它的作用是对程序进行注释,提高程序的可读性。在源代码被编译时,编译程序不对注释进行编译,注释被忽略。\n[0086] 如果我们根据这些关键词的意义或功能分别将以上C语言的源代码中的关键词用汉字、汉语拼音、汉语语音码来表示,比如:include(包含、bāohán、bkahse)(注括号外是英文程序语言关键词,括号内分别是该英文程序语言关键词对应的用汉字、汉语拼音、汉语语音码表示的关键词,以上以下均同),同理:stdio.h(输入输出头文件、shūrùshūchūtóuwénjiàn、xuaruuxuaquatxvwnejisu)、void(空值 、kōngzhí、kdajre)、main(主函数、zhùhǎnshù、juvhsvxuu) 、Printf(屏显、píngxiǎn、pqexisv),则以上C语言的源代码可以用汉字关键词来表示从而实现汉字或中文汉语编程:\n[0087] #包含<输入输出头文件> //将输入输出函数所在的头文件包含到当前的源程序中\n[0088] 空值 主函数() //返回值为空的程序主函数,每个程序都从这个函数起点开始执行\n[0089] { //该半花括号是主函数的函数体的开始部分\n[0090] 屏显(“我们会使用汉语拉丁文。”); //将括号中双引号之间的字符显示在显示上\n[0091] } //该半花括号是主函数main函数的函数体的结束部分\n[0092] 以上C语言的源代码可以用汉语拼音关键词来表示从而实现汉语拼音汉语编程:\n[0093] # bāohán< shūrùshūchūtóuwénjiàn > //将输入输出函数头文件包含到当前的源程序中\n[0094] kōngzhí zhùhǎnshù() //返回值为空的程序主函数,每个程序都从这个函数起点开始执行\n[0095] { //该半花括号是主函数的函数体的开始部分\n[0096] píngxiǎn (“我们会使用汉语拉丁文。”);//将括号中双引号之间的字符显示在显示屏上\n[0097] } //该半花括号是主函数main函数的函数体的结束部分\n[0098] 以上C语言的源代码还可以用汉语语音码关键词来表示,从而实现汉语语音码汉语编程:\n[0099] #bkahse< xuaruuxuaquatxvwnejisu > //将输入输出函数头文件包含到当前的源程序中\n[0100] kdajre juvhsvxuu () //返回值为空的程序主函数,每个程序都从这个函数起点开始执行\n[0101] { //该半花括号是主函数的函数体的开始部分\n[0102] pqexisv (“我们会使用汉语拉丁文。”); //将括号中双引号之间的字符显示在显示屏上\n[0103] } //该半花括号是main函数的函数体的结束部分[0104] 用以上关键词对照表进行关键词替换,以上用汉字、汉语拼音和汉语语音码编写的计算机程序可以转换成用英文关键词编写的计算机源程序,比如:\n[0105] #includ //将输入输出函数所在的头文件stdio.h包含到当前的源程序中\n[0106] void main() //返回值为空的程序主函数,每个程序都从这个函数起点开始执行\n[0107] { //该半花括号是main函数的函数体的开始部分\n[0108] Printf(“我们会使用汉语拉丁文。”); //将括号中双引号之间的字符显示在显示屏上\n[0109] } //该半花括号是main函数的函数体的结束部分\n[0110] 而这个计算机源程序就是标准的计算机C语言的源代码,可以交由现有的计算机C语言编译程序编译成汇编语言程序,汇编语言程序再汇编成机器码后交由计算机运行。\n[0111] 这里需要指出的是,由于汉语语音码和英文都是用26个拉丁字母组成,仅从字符角度来看汉语语音码和英文往往容易混淆,因此、计算机在将汉语语音码关键词翻译成对应的英文编程关键词时,先要进行必要的判断,如果26个字母组成的编程关键词和语句是英文则直接按现有传统方式进行计算机程序编译,如果判断出是汉语语音码则先进行转换成英文关键词后,再按传统方式进行计算机程序编译,汉语语音码具有一定的编写规则,一般从一个单词最后一个字母从右往左数起不包含最后一个字母在内(该字母往往是“a” “e”“v”“u” “o”字母之一,是语音码音节的声调编码符号),每隔1至3字母便会出现“a” “e”“v”“u” “o”字母之一,比如:bkahse、xuaruuxuaquatxvwnejisu、kdajre、 juvhsvxuu、pqexisv中有下划线的部分就是汉语语音码的调号,都呈现了上述特征,呈现这种特征的关键词一定是汉语语音码关键词,因此、在这种情况下一定要先转换成英文关键词后,再进行编译或解释。\n[0112] 在系统是纯西码也即纯ASCII码系统时,由于汉字或汉语拼音在纯ASCII码系统不能正常显示,因此、在除了关键词和语句及其组成语句的关键词的汉字或汉语拼音需要转换成汉语语音码关键词外,其它非关键词的汉字或汉语拼音也需要转换成汉语语音码,转换完成后再交由计算机进行英文关键词的转换,并最后编译成机器码,并交计算机运行。\n[0113] 具体可采用以下方法,比如,将上面的汉字关键词汉语拼音关键词编写的程序全部转换成汉语语音码关键词程序源代码,源代码中显示的汉字:“我们会使用汉语拉丁文。”也通过上述汉字汉语拼音与汉语语音码双向转换模块转换成汉语语音码,转换成后的上述程序源代码如下:\n[0114] #bkahse< xuaruuxuaquatxvwnejisu > //将输入输出函数所在的头文件包含到当前的源程序中\n[0115] Kdajre juvhsvxuu () //返回值为空的程序主函数,每个程序都从这个函数起点开始执行\n[0116] { //该半花括号是main函数的函数体的开始部分\n[0117] pqexisv (“wovmno huiu xrvydu hsuyyv laadqawnv.”); //将括号中双引号之间的字符显示在显示屏上\n[0118] } //该半花括号是main函数的函数体的结束部分\n[0119] 在计算机运行前,上述汉语语音码关键词写成的计算机C语言源程序通过汉语语音码关键词替换成英文关键词,得到下列用英文关键词编写的计算机C语言源程序:\n[0120] #includ //将输入输出函数所在的头文件stdio.h包含到当前的源程序中\n[0121] void main() //返回值为空的程序主函数,每个程序都从这个函数起点开始执行\n[0122] { //该半花括号是main函数的函数体的开始部分\n[0123] Printf(“wovmno huiu xrvydu hsuyyv laadqawnv.”); //将括号中双引号之间的字符显示在显示上\n[0124] } //该半花括号是main函数的函数体的结束部分\n[0125] 此时,计算机屏幕从原来显示:我们会使用汉语拉丁文。变成显示:wovmno huiu xrvydu hsuyyv laadqawnv.\n[0126] 当需要阅读源程序代码时,计算机可以根据所用的计算机编程语言的关键词和语句及其组成语句的关键词与汉字关键词或汉语拼音关键词或汉语语音码关键词一一对应关系,根据预先的设定,关键词和语句及其组成语句的关键词分别可以以英文、汉字或汉语拼音或汉语语音码的方式显示,其它非关键词的编程内容和字符表达方式可以不变,也可以经过汉字汉语拼音与汉语语音码双向转换模块和汉语语音码与外文双向翻译转换模块的转换再输出成系统预先设定的信息种类的文本文件程序源代码,该信息种类包括汉字、汉语拼音、汉语语音码、外文。具体可采用以下方法,比如:\n[0127] 下列英文书写的C语言的源代码:\n[0128] #includ\n[0129] void main()\n[0130] {\n[0131] Printf(“我们会使用汉语拉丁文。”);\n[0132] }\n[0133] 中的汉字信息为:“我们会使用汉语拉丁文。”可以调用上述汉字汉语拼音与汉语语音码双向转换模块,并采用上述方法转成汉语语音码信息,汉语语音码信息为:wovmno mwvtisa xrvydu laadqawnv.最后再调用汉语语音码与英文为主的外语双向翻译模块,将汉语语音码表示的汉语信息转换成英文信息:we use latin every day.\n[0134] 此时上述含有汉字的英文书写的C语言的源代码就变成全英文的源代码:\n[0135] #includ\n[0136] void main()\n[0137] {\n[0138] Printf(“we use latin every day.”);\n[0139] }\n[0140] 此时,计算机屏幕从原来显示:我们会使用汉语拉丁文。变成显示:we use latin every day.\n[0141] 汉语语音码与英文为主的外语双向翻译模块可以以预先存储在计算机中的实例库的方式进行转换,也可按如下步骤进行翻译变换:\n[0142] 1.wovmno mwvtisa xrvydu laadqawnv(. 汉语语音码表示的汉语信息)[0143] 我们 每天 使用 拉丁文。(用汉字表示的汉语信息)\n[0144] a)查预先储存在计算机系统中的标注单词词性的汉语词典建立单词词性串:(句中括号内的部分是词性,以下均同)\n[0145] wovmno(人称代词1)+mwvtisa(时间名词1)+xrvydu(动词1)+laadqawnv(名词2).\n 我们(人称代词1) +每天(时间名词1) +使用(动词1) +拉丁文(名词2)。\n[0146] b)根据上面得到的句子词性串查预先储存在计算机系统中的表得到预先储存在表中的汉语句型:\n[0147] (词性和该词所作的句子成分串组成句型,以下均同)\n[0148] wovmn(o 人称代词1作主语)+mwvtisa(时间名词1作时间状语)+xrvydu(动词1作谓语)+laadqawnv(名词2作宾语)\n[0149] 我们(人称代词1作主语) +每天(时间名词1作时间状语) +使用(动词1作谓语) +拉丁文(名词2作宾语)\n[0150] c)根据上面得到的汉语句型查表得到预先储存在表中的对应的英语句型:\n[0151] wovmno(人称代词1作主语)+xrvydu(动词1作谓语)+laadqawnv(名词2作宾语)\n +mwvtisa(时间名词1作时间状语)\n[0152] 我们(人称代词1作主语) +使用(动词1作谓语) +拉丁文(名词2作宾语)[0153] +每天(时间名词1作时间状语)\n[0154] 此时查预先储存在计算机系统中的汉英词库进行单词或词组意思的转换,并按此句型顺序输出便完成汉语翻译成英语的转换,为了表明此机器翻译过程的可双向性,我们再作下面进一步的变换:\n[0155] d)根据上面得到英语句型查表得到预先储存在表中的与对应的英语单词或词组词性相一致的词性串:(该词性串也可从得到的目标语言句型中提取得到,以下均同)[0156] wovmno(人称代词1)+xrvydu(动词1)+laadqawnv(名词2)+mwvtisa(时间名词1).\n 我们(人称代词1) +使用(动词1) +拉丁文(名词2) +每天(时间名词1)。\n[0157] e)查预先储存在计算机系统中的汉英词库进行单词或词组意思的转换并按上面所得到的英语句型的顺序输出:\n[0158] we(人称代词1) use(动词1) latin(名词2) every day(时间名词1).[0159] we use latin every day.\n[0160] 这样便完成了汉语翻译成英语的转换,同时我们还可以看到除了从a转换到e外,我们还可以用同样的方法从e回到a,此时英语被转换成了汉语,表明用本发明的方法可以实现机器翻译,此过程可双向性。\n[0161] 比如我们将翻译得到的英语句子“we use latin every day.”运用汉语翻译成英语的类似步骤,再将这句句子从e回到a和1,从汉语翻译成英语的路径反推回去,我们得到下面的步骤:\n[0162] 1.“we use latin every day.” (我们翻译得到的英语句子)\n[0163] e)查预先储存在计算机系统中的标注单词或词组词性的英语词典建立单词或词组的词性串:\n[0164] we(人称代词1)+use(动词1)+latin(名词1)+every day(时间名词2).[0165] d)根据上面得到的句子词性串查表得到预先储存在表中的英语句型:\n[0166] we(人称代词1作主语)+use(动词1作谓语)+latin(名词1作宾语)+every day(时间名词2作时间状语)\n[0167] c)根据上面得到英语句型查表得到预先储存在表中的对应的汉语句型:\n[0168] we(人称代词1作主语)+every day(时间名词2作时间状语)+use(动词1作谓语)+latin(名词1作宾语)\n[0169] 此时查预先储存在计算机系统中的汉英—英汉双向词库进行单词或词组意思的转换,并按此句型顺序输出便完成英语翻译成汉语的转换,为了表明此机器翻译过程的可双向性,我们再作下面进一步的变换:\n[0170] b)根据上面得到汉语句型查表得到预先储存在表中的与对应的汉语单词或词组词性相一致的词性串:\n[0171] we(人称代词1)+every day(时间名词2)+use(动词1)+latin(名词1)[0172] a)查预先储存在计算机系统中的汉英—英汉双向词典进行单词或词组意思的转换并按上面所得到的汉语句型的顺序输出:\n[0173] 我们(人称代词1) 每天(时间名词2) 使用(动词1) 拉丁文(名词1).[0174] 我们 每天 使用 拉丁文。\n[0175] 最后还可以通过汉字转换成汉语语音码表达的汉语信息,或直接将英文转成汉语语音码表示汉语信息的句子,这样又回到上述原来的句子1:\n[0176] 1.wovmno mwvtisa xrvydu laadqawnv.\n[0177] 这样我们重复汉语译英语的过程就又得到了我们刚才交给系统翻译成英语的汉语句子,说明了该机器翻译方法具有双向可逆性。同理,也可以用上面的方法对复句进行双向翻译。\n[0178] 同理,我们可以将英文表示的源代码信息通过上述汉语语音码与外文双向翻译模块转换成汉语语音码表示的汉语源代码信息,汉语语音码表示的汉语源代码信息又可以通过上述汉字汉语拼音与汉语语音码双向转换模块转换成汉字、汉语拼音表示的汉语源代码信息,比如:\n[0179] 以上C语言的全汉语语音码表示的汉语源代码:\n[0180] #bkahse< xuaruuxuaquatxvwnejisu >\n[0181] kdajre juvhsvxuu ()\n[0182] {\n[0183] pqexisv (“wovmno huiu xrvydu hsuyyv laadqawnv.”);\n[0184] }\n[0185] 此时,计算机屏幕从原来显示:我们会使用汉语拉丁文。变成显示:wovmno huiu xrvydu hsuyyv laadqawnv.\n[0186] 以上C语言的全汉字表示的汉语源代码:\n[0187] #包含<输入输出头文件>\n[0188] 空值 主函数()\n[0189] {\n[0190] 屏显(“我们会使用汉语拉丁文。”);\n[0191] }\n[0192] 此时,计算机屏幕从原来显示:我们会使用汉语拉丁文。变成同样显示:我们会使用汉语拉丁文。\n[0193] 以上C语言的全汉语拼音表示的汉语源代码:\n[0194] # bāohán< shūrùshūchūtóuwénjiàn >\n[0195] kōngzhí zhùhǎnshù()\n[0196] {\n[0197] píngxiǎn (“wǒmen huì shǐyòng hànyǔ lādīng wěn。”);\n[0198] }\n[0199] 此时,计算机屏幕从原来显示:我们会使用汉语拉丁文。变成显示:wǒmen huì shǐ
法律信息
- 2021-11-09
未缴年费专利权终止
IPC(主分类): G06F 9/44
专利号: ZL 201010564045.3
申请日: 2010.11.26
授权公告日: 2016.05.25
- 2016-05-25
- 2016-05-11
专利申请权的转移
登记生效日: 2016.04.19
申请人由苗玉水变更为青海汉拉信息科技股份有限公司
地址由200093 上海市杨浦区控江一村44号甲105室变更为810003 青海省西宁市青海生物科技产业园区经四路26号孵化楼510室
- 2013-11-20
实质审查的生效
IPC(主分类): G06F 9/44
专利申请号: 201010564045.3
申请日: 2010.11.26
- 2012-05-30
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
1996-04-23
| | |
2
| |
2008-02-06
|
2006-08-02
| | |
3
| |
2010-06-09
|
2008-10-22
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |