欢迎来到天天文库
浏览记录
ID:34824856
大小:1.15 MB
页数:78页
时间:2019-03-11
《c++程序动态切片系统的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、南京航空航天大学硕士学位论文C++程序动态切片系统的研究与实现姓名:吴永军申请学位级别:硕士专业:计算机应用技术指导教师:江国华20080101南京航空航天大学硕士学位论文摘要程序切片技术是一种分析和理解程序的技术其中面向过程程序切片技术已趋于成熟但是面向对象程序切片技术特别是面向对象程序动态切片技术起步较晚目前仍处于初始阶段传统的算法是通过建立程序的依赖图得到动态切片但依赖图需要占用大量的空间因此算法效率较低XiangyuZhang等提出的LP(LimitedPreprocess)动态切片算法既利用了程序中的依赖性信息又不需要建立依赖图具有节省内存空间算法
2、效率高的优点但LP算法只能对面向过程程序进行切片本文对面向对象动态程序切片技术进行了深入的研究在利用LP算法优点点的基础上结合C++语言特性对这个算法进行改进提出了适合面向对象C++程序的动态切片算法该算法扩展了函数的概念把类的函数成员看作全局函数解决了对函数成员进行切片的问题扩展了函数调用的概念把给对象发送消息看作函数调用解决了C++程序中隐式调用函数的问题采用了“object-variable”形式存储感兴趣的变量解决了LP算法无法区分普通变量对象的成员数据和对象变量的问题改进后的算法可以有效地处理C++程序的多态继承和封装等特性和别的C++动态切片算法
3、相比有较高的效率在提出的算法基础上设计并实现了一个C++程序动态切片原型系统(CPP_SLICER)该系统应用本文所研制的词法语法分析器得到C++程序中的信息应用程序插装技术得到程序的执行序列经测试该系统能够正确处理C++语言的特性最后为了使本系统能更好地应用到程序调试领域应用COM(ComponentObjectModel)技术把它以插件的形式集成到了VC6.0开发环境关键词面向对象动态程序切片依赖图程序插装Demand-DrivenCOM.IC++程序动态切片系统的研究与实现ABSTRACTProgramslicingisatechnologyofana
4、lyzingandunderstandingprogram.Thetechnologyofprocess-orientedprogramslicingisbecomingmoremature.However,object-orientedprogramslicing,especiallyobject-orienteddynamicprogramslicingdevelopedquitelateandisstillinthebeginningstageatpresent.Traditionalalgorithmsusuallygetdynamicprogram
5、slicesbybuildingdependencegraphsoftheprograms,butdependencegraphstakelotsofmemoryspace,sotheyareinefficient.XiangyuZhangandothersputforwardanewalgorithmcalledLP(LimitedPreprocess)fordynamicprogramslicing.Thisalgorithmmakesgooduseofdependentinformationintheprogramwithoutbuildingadep
6、endencegraph,sothisalgorithmhassomeadvantages,suchassavingmemoryspace,improvingcalculationefficiency,butitisonlyusedforprocess-orientedprogram.Thispapermakesadeepstudyonobject-orienteddynamicprogramslicing.BasedontheadvantagesofLPalgorithm,thispaperimprovesthisalgorithmbyconsiderin
7、gthefeaturesofC++language,andthenproposesanewdynamicslicingalgorithmforC++object-orientedprogram.Thenewalgorithmexpandstheconceptoffunctionswithtakingmemberfunctionsasglobalfunctionssoastosolveslicingformemberfunctions;Thenewalgorithmexpandstheconceptoffunctioncallswithtakingsendin
8、gmessagetoobjectsasfunctio
此文档下载收益归作者所有