程序代码相似度检测方法的设计与实现

程序代码相似检测方法的设计与实现中国体育报
瓢虫科门的悬念    计算机程序代码相似度检测是指利用计算机技术,对两段程序代码进行比较,以从中提取其中的相似性,从而对源程序时间消耗、运行结果做统计把握,用来编写更加高效的程序,有助于加快程序的开发周期,也可以检测两程序是否怀疑“抄袭”或者根据其标准检测出程序代码质量的好坏。本文讨论的是程序代码相似度检测方法的设计与实现。
    程序代码相似度检测的核心思想时对比比较,既然需要比较,那么就要从把程序代码变形为其他形式开始分析。一般程序语言都具有反汇编的功能,可以将源代码转换为汇编代码。然后在汇编代码的基础上,再将其转化为由标记组成的字符串。经过这个变形,我们就可以通过对比比较,寻求两个程序代码之间的相似性,比如比较共同出现的标记,出现次数以及位置等等。
    在介绍如何实现程序代码相似度检测之前,先介绍一下两个程序代码之间相似度检测时,必须考虑的要素:
    (1)选择一种合适的比较方式,有时采用字符串比较,有时采用词语比较,有时采用句子比较。
圆柱凸轮
    (2)考虑判断标准,一般有按照比较粒度的大小、相似度的分数(一般使用0-1浮点数来标识),评分越高,说明相似度越大。电话台灯
    (3)考虑比较程序的耗时,一般性的比较会消耗的时间较长。
    根据上面的要素,我们可以将程序代码相似度检测实现的思路总结如下:
    (1)先将源代码转换为机器语句,从而形成一段机器语句包括标记。
    (2)在机器语句上,采用一定的比较方式,如字符串比较,词汇比较等,进行比较,并根据不同比较粒度和标准,得出两个比较程序的相似度分数,该分数可以参考拟定出程序的质量,或者用于进行嫌疑程序的抄袭检测。
    (3)记录比较过程所耗费的时间,以及相似度检测得分,并将比较结果反馈给用户。
    以上是程序代码相似度检测方法设计及实现方面的一些讨论。通过从获取源程序,到变形比较,再到考虑检测用时,不断根据细致设计,可以有效的检测出两程序之间的相似度,同时也可以作为代码质量的参考依据,从而减少源程序的时间消耗,同时也可以加快程序的开发周期,有助于提升软件的品质。
无机化学学报

本文发布于:2024-09-23 02:30:17,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/129603.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:检测   相似   程序代码   程序   实现   时间   采用   标记
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议