检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:王甜甜[1] 郭全萍[1] 马培军[1] 苏小红[1]
机构地区:[1]哈尔滨工业大学计算机科学与技术学院,哈尔滨150001
出 处:《哈尔滨工业大学学报》2009年第3期48-52,共5页Journal of Harbin Institute of Technology
基 金:国家自然科学基金资助项目(60673035)
摘 要:为了消除指针程序实现形式的多样化,简化程序分析,提出一种对用指针实现的程序进行标准化的方法.首先将程序表示成系统依赖图,分析指针别名信息;然后制定指针标准化规则并结合已有的代码多样化消除规则,对系统依赖图进行保持语义不变的转换,将语法表示不同但语义等价的程序转换为相同的系统依赖图表示,从而消除代码多样化.最后,将该方法应用到C语言编程题的自动评分系统中,并与人工评分和正确评分结果进行对比,验证了该方法的有效性.In order to facilitate program analysis, a standardization method is proposed to remove variations in programs implemented with pointers. Firstly, a program is represented by a system dependence graph (SDG), and the alias information is analyzed. Then standardization rules for eliminating variations caused by pointers are proposed, and the SDG is transformed according to these rules, so that syntactically different but semantically equivalent codes can be transformed into identical SDGs. Therefore, code variations are removed. The proposed method has been applied to an automatic grading system of C programming language, and the results were compared with those of both manual and strictly precise grading systems to validate the effectiveness of our method.
关 键 词:指针别名 系统依赖图 程序标准化 别名替换 别名分析
分 类 号:TP311[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:18.188.224.69