首页> 中文学位 >程序代码复制检测中特征串提取技术研究
【6h】

程序代码复制检测中特征串提取技术研究

代理获取

目录

文摘

英文文摘

声明

第一章 绪论

1.1研究意义

1.2国内外研究现状

1.3本文研究内容

1.4本文组织结构

第二章 程序代码复制检测技术概述

2.1程序代码复制检测技术概述

2.1.1程序代码抄袭

2.1.2程序代码相似度

2.1.3程序代码相似度检测技术

2.1.4特征值提取

2.2现有抄袭检测系统简介

2.2.1 plague系统

2.2.2 MOSS

2.2.3 SIM

2.2.4 YAP系列

2.2.5 Jplag

第三章 相关技术介绍

3.1规格化源代码

3.2 XML介绍

3.3常用程序分析器生成工具介绍

3.3.1 LEX词法分析器生成工具

3.3.2 YACC语法分析器生成工具简介

3.3.2ANTLR分析器生成工具简介

第四章 结构串的生成与实现

4.1整体设计方案

4.1.1设计思路

4.1.2语言的选择

4.2 C语言文法规则的制定

4.2.1语法名称定义

4.2.2选项设置

4.2.3Tokens定义

4.2.4语法规则描述

4.2.5词法规则描述

4.3 C语言分析器

4.3.1分析器的构造

4.3.2分析器的应用

4.4程序转换

4.5研究结果分析

第五章 总结与展望

5.1论文总结

5.2不足与进一步的工作

攻读学位期间发表的学术论文

参考文献

附录

致谢

展开▼

摘要

复制检测技术在信息时代得到非常广泛的应用,尤其在计算机程序设计方面。复制检测又为两类:一类是形式化语言文本(如:计算机程序代码等)复制检测,另一类是自然语言文本复制检测。程序代码复制检测就是判断一个程序的代码是否抄袭、剽窃或复制于另外一个或多个程序,其核心是代码相似度计算。 在计算程序间相似度时,首先需要提取程序段的特征值,即能够代表该程序内容和结构的基本语言单位。然后对提取出的待比较程序的特征值进行比较,根据比较结果判断程序问的相似程度,即计算相似度。在这个过程中,特征值的提取至关重要,特征值的好坏直接影响比较结果的准确性。本文主要是对特征值提取技术的研究。 本文首先介绍了有关程序代码相似度检测技术,包括程序代码相似度的定义与检测技术分类,国内外研究发展的现状以及现有的程序代码相似度判别系统的相关介绍。然后对程序代码相似度检测过程中特征值提取技术进行了介绍。 在现有的程序代码相似度判别系统中,多是采用的基于字符串比较的方法,首先把待比较程序经过分词转换得到特征字符串,然后再对字符串进行相似度比较。这样的字符串包含程序结构信息少,会影响比较结果的准确性。本文主要研究如何把程序转换为包含更多结构信息的结构串,为下一步比较提供更好的依据。 本研究设计的生成结构串的方法主要分三步完成:第一步,制定语言的词法规则和语法规则,为后续对程序源代码的分析转换提供依据;第二步,生成词法分析器和语法分析器;第三步,使用词法分析器和语法分析器对程序源代码进行分析,生成相应的树形结构串。 最后,本文通过实例测试,本研究实现了把程序源代码转换为树形结构串,达到了预期的研究目的。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号