admin 管理员组文章数量: 1184232
2024年12月31日发(作者:grapevine)
量子程序设计语言NDQJava2处理系统分析
摘要:ndqjava2是在ndqjava系统的基础上发展而来的,而计算
机硬件的革新,也使得量子效应开始影响到电子元件,量子计算也
会在不久的未来终将超越传统计算成为一种新型模式。对于量子程
序的设计,应用到ndqjava2这种设计语言,这个系统是对ndqjava
的创新,在原本的基础上增加了条件语句、循环语句、子程序、异
常处理模块等量子成分,完善了ndqjava系统,使得语法分析更加
准确。
关键词:ndqjava2;创新;程序设计;量子成分
中图分类号:tp311.52
量子程序设计语言ndqjava2处理系统,是借助于ndqjava的经
典系统,加以相应的量子成分,在ndqjava2的处理系统中,是使
用的层层递进的树形结构,把语法树来翻译成java代码,更加有
利的实现语法的分析。
1认识ndqjava2语言
ndqjava2是在ndqjava的基础之上,增加了具有量子成分的条件
语句、循环语句、子程序等进化而来,形成的是一种混合式的、结
构化的量子程序设计语言。但是由于技术的限制,还没有真正的量
子计算的问世,要进行ndqjava2设计语言,就要在传统计算机上
进行模拟,由于ndqjava2和ndqjava一样,都是以java为基础的,
所有要采取从编译到解释的过程。在设计中,也遵循着ndqjava的
原则:实用、简明、严谨、快速。
量子成分的条件语句,与java语言的运用相类似,主要是为了
解决在ndqjava在书写时没有固定的条件控制语句,时常需要在传
统部分与量子部分之间进行切换作业,影响了程序效果。在
ndqjava2的条件语句中,每一个作为变量的量子都能独立的使用一
个使能量子,更加清晰合理。
量子成分的循环语句,在ndqjava2中会先进行判断,判断语句
的真伪,如果证明为真,就进行量子程序表达式的循环,但如果证
明为伪,就会终止循环。
量子成分的子程序,解决了程序书写时的重复问题。子程序应用
于ndqjava2主要是分为定义、调用这两个部分,能有效减少语言
的重复情况,在出现重复的计算时,就可以把相互重复的部分代码
变为一个子程序,使程序结构变得更加清晰。
量子成分的异常处理,量子的程序设计语言,与传统的设计语言
有一个很大的不同点,就是量子的变量性质。在量子的语言结构中,
引起异常变化的因素非常多,比如:if语句的使用,在条件满足的
情况下进行,但在条件不满足的情况下就不能进行,就会引起异常
情况,异常处理的模块就是专门应对这样的情况。
2ndqjava2系统功能
ndqjava2以其创新的设计,对ndqjava进行系统的优化,也是在
java语言的基础上,进行从编译到解释的过程。主要是在词法分析、
程序汇编与解释、代码转换这几个领域作用突出。
2.1ndqjava2的词法分析功能
词法分析功能,是ndqjava2的第一大功能,主要是为了对
ndqjava2源程序的单词进行识别,并形成单词的序列。由于现在完
备的量子技术还没有真正实现,所以在ndqjava2中就包括传统和
量子两个部分,本着对已有资源充分利用的原则,把传统经典的部
分与量子的部分进行区别处理。
在传统经典的部分中,使用的是java处理,量子部分出现的语
法都默认为量子成分,自行设计。两部分别的要创建不同的文件夹
进行保存,在运行时要进行判断为哪种部分,如果为量子部分,就
利用量子成分的循环语句,进行文件的处理,处理后建立起语法树。
如果经判断,为经典的部分,就由java运行。ndqjava2系统中,
语言的关键字和分解符都有独特的码与之一一对应,这就把源程序
中所出现的单词,转化为单词序列,而标示符用量过大,无法实现
一一对应,为了使用方便,就统一为一种码。并进行程序设计,需
要使用以的下形式:
开始→ndqjava2源程序→预处理子系统(对多余信息进行删除)
→扫描程序(对单词进行实际识别)→单词序列→结束。
2.2ndqjava2的程序汇编与解释功能
为了实现ndqjava2在传统计算机上书写量子的程序,就要设计
假设的基本的指令集和汇编的指令集,并使用java来编写相应的
汇编程序、解释程序。
ndqjava2中,程序汇编功能是采用的分段汇编,将每一段汇编指
令各自进行汇编,再集合起来,形成一个完整的汇编指令,在获取
汇编指令以后需要使用command函数把指令输入到量子的汇编系统
中,量子的汇编字符串就是command函数得参数。汇编字符串被空
格分隔为多个子串,指令字符串上的第一个子串,就是操作码。根
据获得的操作码,查找对应的操作数,生成指令。不同的指令所需
要的操作数也各不相同,最后就需要把操作码与操作数进行合并,
作为机器的指令向外输出。
程序的解释功能,就是对于机器的指令进行逐条的翻译过程,并
执行计算。在程序的解释功能中,经过量子的汇编程序处理过的机
器指令存入系统中,以指令地址分类,分为单地址和双地址,单地
址的最高操作码位数为0,双地址的最高操作码位数为1。以此来
获得准确的操作码。分析得到的操作码,调整与之相匹配的量子操
作方法,根据操作数的两种分类:寄存器编码型和数值型,进行操
作数据处理,汇集为参数输入函数处理。
2.3ndqjava2的代码转换功能
ndqjava2在进行代码转换的时候,首先要遵循相应的原则,主要
是三方面:第一要确保转化的正确性,第二是机构程序要清晰、易
读,第三就是要利用自身的java系统,提高效率。
在进行代码转换时,采取树形的逐层转换,先转换低层次的代码,
再由低层次的代码来转换高层次的代码,这就很大程度上保证了完
整性和正确性。代码之间要层级明确,建立起一个明确的结构,每
一个量子成分的代码都要有一个单独的函数,各个函数之间不能在
功能上产生交叉和重复。函数之间可以进行上下级的调用,但不能
在同级之间进行调用。在整个ndqjava2系统中,是采用建立语法
树,转化为以java语言编写的指令程序,在运用中,要分析整个
语法树,对每一个量子模块都进行识别,调用代码的模块转换为函
数,进行处理以达到生成的java代码要包含汇编的指令。
经过本文的论述,主要是探讨了整个ndqjava2的技术理念:即
在ndqjava的基础上,进行的发展和创新。以及技术的系统功能,
可以预见的是量子程序设计语言ndqjava2处理系统已经是未来发
展的主流,随着科技的进步,必将能真正的投入应用之中。
参考文献:
[1]刘玲,徐家福.量子程序设计语言ndqjava-2[j].软件学
报,2011(2).
[2]徐家福,宋方敏,钱士钧,戴静安,张云洁.量子程序设计语言
ndqjava[j].软件学报,2008(11).
[3]焦阳,吴楠,宋方敏.ndqjava语言处理系统量子汇编及解释程
序[j].南京大学学报(自然科学版),2008(5).
版权声明:本文标题:量子程序设计语言NDQJava2处理系统分析 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1735734989a1686315.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论