计算机科学 ›› 2015, Vol. 42 ›› Issue (Z6): 516-518.
田冰川,孙珂,巢汉青
TIAN Bing-chuan, SUN Ke and CHAO Han-qing
摘要: 抽象语法树是程序源代码的树状表现形式,在代码分析与特征提取过程中发挥着重要作用。GCC可以导出C语言源程序的抽象语法树文件,但其中包含大量冗余信息与无关信息,不利于上述工作的展开。针对此问题,提出一种简化GCC抽象语法树的算法,在保持语法树基本结构完整的前提下,移除其中与源程序无直接关联的节点,以线性时间复杂度重建语法树文件,达到简化的目的。
[1] 吴楠.基于GCC的缓冲区溢出检测研究[D].哈尔滨:哈尔滨工程大学,2010 [2] 赵彦博.基于抽象语法树的程序代码抄袭检测技术研究[D].呼和浩特:内蒙古师范大学,2010 [3] 张良德,赵彦博.一种基于GCC抽象语法树的程序特征提取方法[J].电子技术与软件工程,2013(20):269-270 [4] 江梦涛,荆琦.C语言静态代码分析中的调用关系提取方法[J].计算机科学,2014,1(6A):442-444 [5] Option Summary[EB/OL].(2013-10-16) [2014-11-10].http://gcc.gnu.org/onlinedocs/gcc-4.8.2/gcc/Option-Summary.html [6] 杨昌坤,许庆国.C程序控制流程模型的提取技术与实现[J].计算机科学,2014,1(5):208-214 [7] 李鑫,王甜甜,苏小红,等.消除GCC抽象语法树文本中冗余信息的算法研究[J].计算机科学,2008,5(10):170-172 [8] Deitel P,Deitel H.C语言大学教程(第六版)[M].苏小红,等译.北京:电子工业出版社,2012 |
No related articles found! |
|