【摘 要】
:
程序分析评价技术在程序测试、程序维护以及信息领域的软件版权侵权等方面中都有着广泛的应用前景。但是目前的程序分析评价技术主要停留在比较程序输出结果的阶段,并不能发现
论文部分内容阅读
程序分析评价技术在程序测试、程序维护以及信息领域的软件版权侵权等方面中都有着广泛的应用前景。但是目前的程序分析评价技术主要停留在比较程序输出结果的阶段,并不能发现那些在语义上有问题的程序的错误。现有的相关技术,例如程序理解技术大多是以人工的方式对程序进行分析,并且理解过程十分复杂,很容易出现信息丢失,前后不一致的情况,从而造成分析的困难。本课题正是针对此问题进行研究。
本课题结合编译器设计的相关技术和软件度量技术,采用源码-源码模板匹配方法,在结构层次上和语义层次上对程序进行分析评价,并且分析了程序分析评价技术在一些领域的应用前景。课题设计的具体过程是:使用ANTLR构造语言分析器,通过加入语义动作,结合SSA技术,获得表示程序结构的扩展控制流图,并应用传统软件度量方法对程序的结构进行分析度量。在语义层次上,使用编译器内联扩展等技术,进行语义保留的等价转换,并把SSA技术和PDG结合在一起生成程序表示图的表示形式,然后把程序表示图的各个节点划分到一个个可以比较的范围内,采用数据流一致和控制流一致的分析技术,分析出程序差异,确定差异的类型,并定位程序的错误位置;最后为了更加精确地确定程序的语义错误位置,提出语义错误度量规则,对程序中出现的语义错误进行度量,并给出语义错误的度量信息。
最后,本课题分别在程序结构层次上和语义层次上进行了实验分析,验证了本文所提出的分析方法能在结构层次上发现程序中潜在的错误,以及在语义层次上可以更加可靠地分析程序中存在的语义错误,并按照语义错误度量规则最大程度准确地定位了程序错误位置。
其他文献
人脸识别是一个非常复杂的问题,尤其是当人脸图像包含遮挡、光照等因素时,很难找到既具有较好鲁棒性又能获得较高识别精度的单个最优的分类器。由于多分类器的集成往往能获得
近年来,三维几何造型所需表示的细节越来越丰富、模型的规模和复杂程度越来越高。采用传统的基于三角片的绘制方法,必需先根据采样点生成三角片,这无疑是件费时且容易出错的
与二维图像相比,三维模型携带的信息更丰富,表现形式更为直观。三维模型已经越来越广泛地使用在了人们的生活与工作的各个方面。实际应用中,用户希望能提供一种基于模型语义
随着师生比例不断扩大,研究生培养工作正面临一些新的挑战。例如保证师生之间及时有效的沟通交流,提供科研工作辅助管理工具,以及构建能方便地进行深入问题探讨的平台环境等
Hough变换能够从含有噪声和断点的二值图像当中提取出目标曲线,但是使用Hough变换的前提是预先知道曲线的方程或形状。对于那些无法预知其方程或形状,而在实际图像中往往在许多
盲签名是数字签名的一种,它是为了实现电子商务中的电子货币技术而产生,和一般电子签名的不同是加入了对签名使用者隐私的保护,也就是说签名者对使用者要求的信息进行签名,但
随着现代社会科学技术的发展,电机在工业、农业等众多领域得到了广泛应用,如何测试、分析和诊断电机故障,尤其是电机振动和噪声的测试分析受到人们的广泛关注。和传统仪器相比较
在电信网、互联网和有线电视网三网融合的趋势下,人们对Internet应用的需求越来越多样化,IPTV作为近年来最热门的多媒体应用之一应运而生。然而IPTV系统在网络性能、流媒体数
数字指纹是一种用于法庭搜集证据和追踪线索的前摄工具,是分发前嵌入在相同内容不同拷贝中的唯一标记,每个数字指纹可以被用来追踪以非授权方式使用了这些内容的用户线索。共
随着经济的发展和生活水平的提高,对中学生按期进行体检成为可能;根据体检的结果,利用计算机进行排位,排除了无法避免的人为因素,是一种非常效率、科学化的重要措施,更可以体现公平