已閱讀5頁,還剩64頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
中圖分類號: 學(xué)校代碼: 10055 密級: 碩 士 專 業(yè) 學(xué) 位 論 文 程序代碼相似度比較的研究與實現(xiàn) of 摘要 摘 要 對計算機和有關(guān)專業(yè)來講,計算機程序設(shè)計課程是一門非常重要的課程,我們無法聯(lián)想計算機專業(yè)的學(xué)生不會編程會怎么樣,因而對計算機和有關(guān)專業(yè)來說,程序設(shè)計課程的均顯得非常重要。在程序設(shè)計的課程中,實際編程實力非常重要,為 了升高同學(xué)的編程實踐能力,同時為后續(xù)課程的研習(xí)和為今后步入社會打下堅固的根蒂,要求學(xué)生能夠獨立的完成老師布置的相關(guān)編程設(shè)計作業(yè)。但是在教學(xué)過程中,我們發(fā)現(xiàn)由于計算機數(shù)據(jù)的易復(fù)制性及互聯(lián)網(wǎng)搜索的便利性,為了完成程序設(shè)計作業(yè),部分學(xué)生采取搜索、抄襲他人代碼的行為。這種行為不但不利于學(xué)生的成長,同時也對成績考核的公平性產(chǎn)生一定的影響。于是我們策劃了一個用于檢測代碼相似度的系統(tǒng),該系統(tǒng)具備深入的使用價值,在教學(xué)中能夠輔助教師檢測學(xué)生提交的功課是否存在剽竊行為 ,在現(xiàn)實生活總可以用來對軟件版權(quán)的進行鑒定。 程序代碼相似 度的比較,指的是在現(xiàn)實生活中,檢測手段的使用,這兩項措施的程序源代碼之間的相似程度, 并根據(jù)相似程度判別標準來判斷兩個程序的源碼是否存在抄襲行為。 本文研究了檢測 首先通過對源屬性類型,和類似的代碼類型特征,相似性評估標準及源程序的分析和研究,預(yù)處理,設(shè)計了一種利用 來比較的相似性,在兩個源文件的結(jié)構(gòu)。使用該系統(tǒng)檢測代碼相似度,可以大大的提高教學(xué)考核的工作效率。 本文采用 用面向?qū)ο蟮墓δ苣K化設(shè)計,基于結(jié)構(gòu)的測量,設(shè)計和開發(fā)的文件讀取模塊,預(yù)處 理模塊,相似性檢測和結(jié)果輸出模塊四大模塊。界面簡潔、友好,檢測結(jié)果按相似的排名和保存在指定的文件。 關(guān)鍵詞: 檢測 代碼相似性 ;預(yù)處理 ;結(jié)構(gòu)度量 ; 法 or of a is a we of in is in to of of a to we as be in to It is to of on of So we a of of in to in be of in of of of to of to of of of by of of CS to a to in of to we of of . is in a in 錄 目 錄 摘 要 . . 1 章 緒 論 . 1 開發(fā)背景 . 1 研究目的及研究意義 . 2 程序代碼相似度檢測技術(shù)的研究現(xiàn)狀 . 3 國外研究情況 . 3 國內(nèi)研究情況 . 3 目前主流的程序代碼相似度檢測系統(tǒng) . 4 論文組織簡介 . 5 章小結(jié) . 5 第 2 章 程序代碼相似度檢測的理論基礎(chǔ) . 6 相關(guān)概念的引入 . 6 程序抄襲描述 . 6 代碼相似度定義 . 8 程序相似代碼的分類和掩飾性行為 . 9 從源代碼單個語句方面討論相似代碼的分類 . 9 從內(nèi)容和功能兩個方面研究相似代碼的分類 . 10 識別相似代碼的一般方法 . 11 已被成功運用的識別方法 . 11 從整體上判斷代碼相似的方法 . 12 相似度度量算法的研究 . 13 屬性計數(shù)技術(shù) . 13 結(jié)構(gòu)度量技術(shù) . 15 目錄 散列值匹配算法 . 18 章小結(jié) . 20 第 3 章 程序代碼相似性識別方法的研究 . 21 標代碼相似性的識別 . 21 于 法的識別方法 . 22 于加權(quán)屬性相似的識別方法 . 23 權(quán)屬性識別方法的理論依據(jù) . 23 代碼相似度計算 . 26 章小結(jié) . 28 第 4 章 程序代碼相似度檢測系統(tǒng)的分析與設(shè)計 . 29 運行流程 . 30 流程說明 . 30 軟件架構(gòu) . 31 文件讀取模塊 . 31 預(yù)處理模塊 . 31 似代碼檢測模塊 . 33 相似度計算模塊 . 35 結(jié)果輸出模塊 . 35 章小結(jié) . 36 第 5 章 程序代碼相似度檢測系統(tǒng)的實現(xiàn) . 37 開發(fā)環(huán)境與開發(fā)平臺 . 37 開發(fā)環(huán)境 . 37 開發(fā)平臺 . 37 程序代碼相似度檢測的實現(xiàn)技術(shù) . 37 術(shù)的優(yōu)點 . 37 術(shù)的開發(fā)框架 . 38 程序代碼相似度檢測系統(tǒng)各功能模塊的實現(xiàn) . 39 目錄 文件讀取模塊 . 40 程序代碼預(yù)處理模塊 . 40 相似代碼檢測模塊 . 41 相似度計算模塊 . 42 結(jié)果輸出模塊 . 42 章小結(jié) . 43 第 6 章 程序代碼相似度檢測系統(tǒng)的測試與運行 . 44 代碼預(yù)處理的測試 . 44 法的檢測 . 45 直接遞歸法和動態(tài)規(guī)劃法求最長公共子序列的效率分析 . 45 檢測結(jié)果分析 . 49 檢測精度分析 . 49 系統(tǒng)界面 . 54 試結(jié)果綜合分析 . 54 章小結(jié) . 55 第 7 章 結(jié)論與展望 . 56 論 . 56 望 . 56 章小結(jié) . 57 參 考 文 獻 . 58 致 謝 . 60 個人簡歷 . 錯誤 !未定義書簽。 在學(xué)期間發(fā)表的學(xué)術(shù)論文與研究成果 . 錯誤 !未定義書簽。 第 1 章 緒論 第 1 章 緒 論 開發(fā)背景 信息技術(shù)的快速發(fā)展使得其 廣泛 應(yīng)用于教學(xué)中。作為信息技術(shù)的應(yīng)用之一,程序語言平臺的建立,一方面方便老師布置程序設(shè)計的作業(yè)和考試,以及提高教師批改作業(yè)的效率,另一方面有助于學(xué)生學(xué)習(xí)過程中不斷練習(xí),提高編程能力。然而,正是由于信息技術(shù)的快速發(fā)展,學(xué)生從互聯(lián)網(wǎng)上獲得相應(yīng)程序資源的便利性不斷增加 ,再加之適當?shù)男薷模?這使得查重的難點不斷增大。 所以我們需要創(chuàng)造一個 新的檢測系統(tǒng),檢測機構(gòu)應(yīng)結(jié)合現(xiàn)有的剽竊檢測技術(shù),結(jié)合程序抄襲是抄襲,要找到一個快速和精確的算法,并 依據(jù)該算法設(shè)計出具有實際應(yīng)用價值的軟件,能夠檢測精準的判斷是否存在抄襲行為 。 因此, 本文的主要目的是根據(jù)具體程序語言的特征,設(shè)計并實現(xiàn)整合程序語言的的支持平臺,對學(xué)生提交的作業(yè)進行相似度查重,從技術(shù)層面減少學(xué)生抄襲的可能性。 在本文中,檢測代碼相似度的 系統(tǒng) 主要 針對 該檢測系統(tǒng)的主要原理是:先將要檢測的代碼和參照的代碼輸入系統(tǒng),通過系統(tǒng) 計算出的兩段程序源代碼的相似度值 , 根據(jù)系統(tǒng)設(shè)計的相關(guān)評價標 準來判斷兩個程序語言是否存在抄襲。如果兩個程序的相似度較高,則抄襲的可能性越大。 我們平時進行交流的語言屬于自然語言。由于自然語言靈活多變的特征,構(gòu)成自然語言的詞匯較大,不同詞匯的組合形成不同的意思表達。即便是同一語言,由于所處語言環(huán)境的不同,其代表的含義也會存大很大差別。因此,對自然語言進行查重是十分困難的。與自然語言相比,程序語言有固定的語法規(guī)則,編寫結(jié)構(gòu)相對簡單。正是由于程序語言獨特的特征,檢測其源代碼相對容易些。 隨著國內(nèi)外對程序語言的相似度檢測研究的不斷深入 , 已經(jīng)出現(xiàn)一些相對成熟的檢測系統(tǒng) 。 目前, 關(guān)于源代碼的相似度檢測技術(shù)大致分為兩類:度量結(jié)構(gòu)技術(shù)和屬性計數(shù)技術(shù)。 屬性計數(shù)技術(shù) 并不考慮程序的設(shè)計流程結(jié)構(gòu) ,而是對 程序源第 1 章 緒論 代碼的一些屬性 進行統(tǒng)計 計數(shù) , 因而該方法能夠有效的檢測出兩源碼文件是否為存在拷貝( 為,但是抄襲者一旦修改拷貝的程序源碼 ,例如添加一些 無用的注釋代碼 、 無用變量 等,其檢測 的 準確性就會大大降低 ,因此很難得出正確的結(jié)論 。 而結(jié)構(gòu)度量技術(shù) 主要是通過對兩組源代碼的結(jié)構(gòu)的相似性進行分析,得出的檢測結(jié)構(gòu)更為真實可靠。 基于此,目前關(guān)于源代碼相似度檢測技術(shù)主要采用結(jié)構(gòu)測量技術(shù)。 結(jié)構(gòu)測試技術(shù) 檢測源代 碼相似度 的工作原理如下: 首先,基于檢測的程序代碼進行預(yù)處理的需要,消除冗余代碼不影響相似性度量的結(jié)果, 如無用 空行、 空格、注釋語句等 , 然后按照語法轉(zhuǎn)換規(guī)則預(yù)處理代碼,將其轉(zhuǎn)變?yōu)榘绦蚪Y(jié)構(gòu)信息的字符串,最后通 常 法等 字符串匹配算法處理標記字符串。從此過程中我們可以看出轉(zhuǎn)換規(guī)則的重要性,但是我們也應(yīng)該注意字符串匹配算法并不能包含全部的程序源碼的結(jié)構(gòu)信息。 目前大多數(shù)程序代碼抄襲檢測系統(tǒng)都使用了結(jié)構(gòu)度量技術(shù)方法。 該方法僅能夠 對 部分完全獨立編寫的程序 進行檢測 ,但 卻不能正確識別 一些代碼抄襲的投機行為 , 如在程序中 添加一些無用的賦值代碼和變量 。 這些修改無須花費太多精力卻可以成功混淆代碼段,使得按照字符串匹配算法計算出來的相似度較小,從而不能達到檢測相似度的目的。 本研究將依據(jù)程序代碼相似度檢測基本理論 ,并從何利用屬性計數(shù)計數(shù)、結(jié)構(gòu)度量計數(shù)和散列值匹配算法來計算相似度。 研究目的及研究意義 在計算機教學(xué)過程中,負責批閱作業(yè)的老師在批閱過程中總是要面對大量的程序代碼 ,工作強度較大,并且人工檢測由于自身局限(如效率低下或者疲勞)容易出現(xiàn)相似度難以檢測出等情況 。部分學(xué)生 出于種種原因 ,基于計算機數(shù)據(jù)的易復(fù)制性及互聯(lián)網(wǎng) 搜索的便利性, 在完成程序設(shè)計作業(yè)時采取搜索、抄襲他人代碼的行為 。該行為不僅不利于成績考核的公平性,也不利于學(xué)生熟練掌握知識。 本文的研究目的 在 于設(shè)計并 實現(xiàn)一個程序源碼相 似度檢測的系統(tǒng),通過檢測學(xué)生提交的編碼課程作業(yè)與給定答案的接近程度, 檢測是否存在抄襲行為 。并且,通過度量技術(shù)實現(xiàn)程序的自動校第 1 章 緒論 正。 程序代碼相似度檢測技術(shù)的研究現(xiàn)狀 國外研究情況 最早的檢測程序代碼相似度檢測和優(yōu)化是重復(fù)的代碼,在第二十世紀70 年代,霍爾斯特德代碼抄襲和重復(fù)性的行為提出了一種軟件科學(xué)指標檢測方法 , 霍爾斯特德 方法基于屬性計數(shù)法的工作原理,將程序中的操作數(shù)和操作符作為計數(shù)目標,將計數(shù)結(jié)果作為標準。再此基礎(chǔ)上, 現(xiàn)了第一個針對 碼的檢測系統(tǒng)。隨后, 結(jié)構(gòu)最典型的測量方法是圈復(fù)雜度 方法 , 該方法 由 心思想是:通過執(zhí)行路徑數(shù)的計算控制程序流的測量。由于圈復(fù)雜度提供了一個程序 控制流 ,如果 在編寫代碼相似度檢測系統(tǒng)時 僅依據(jù)該原理則會 產(chǎn)生極低的 檢測正確率, 因此,在實際應(yīng)用中結(jié)合其他特征。 在實際 應(yīng)用中,往往 采用 結(jié)構(gòu)度量法與屬性計 數(shù)法 相結(jié)合 的方法。 最近開發(fā)的代碼的防抄襲系統(tǒng)主要工作原理的基礎(chǔ)上,比較的源程序,如結(jié)構(gòu)表達式字符串:苔蘚,鼠疫, ,狂吠, 列等。 國內(nèi)研究情況 1998 年初,中國人民警官大學(xué)發(fā)展了 序抄襲判定系統(tǒng)用以檢測 序的相似性 。 為了保證檢測的正確性 ,將 言結(jié)構(gòu) 按 性質(zhì)分為四類:可變類,控制類,標準的過程和算子類。 首先,檢測 統(tǒng)計模塊統(tǒng)計程序的各種性質(zhì)。 在統(tǒng)計比較模塊,比較模塊四個一般屬 性的程序比較的屬性的值,如果總的值非常接近,兩個程序可能是類似的,稱為“類似”的標記。結(jié)束后的總資產(chǎn)價值的比較,每個屬性是一個類似于可能的值的過程中,如果標準差小于兩個程序?qū)?yīng)的屬性的屬性的比較結(jié)果,屬性值和其相應(yīng)的權(quán)重的總和。 按照上述形式依次比較程序的全部屬性,計算出屬性值 比較屬性的個數(shù)除以 2006 年,內(nèi)蒙古師范大學(xué) 在辨別程序代碼相似度的科學(xué)研究中,使用第 1 章 緒論 了空間向量的間隔公式來計算程序代碼的相似水平。但是,這個研究沒有考慮各個屬性之間的關(guān)系和重要性,忽略了很 多有用的信息,從而使得相似度檢測的精度和準確度大大降低,有待于進一步改善。 基于上述國內(nèi)的研究現(xiàn)狀,我們可以看出,國內(nèi)程序相似度檢測方面的研究相對較少。近年來,隨著屬性技術(shù)和程序結(jié)構(gòu)相結(jié)合的新的檢測方法的出現(xiàn),出現(xiàn)了研究程序相似度檢測研究的熱潮。在研究方法上,有學(xué)者提出用神經(jīng)網(wǎng)絡(luò)的方法來檢測程序的相似水平。 總之,目前的研究識別源代碼相似度的方法并沒有明顯的創(chuàng)新,更是對檢測和重復(fù)的代碼優(yōu)化方法的探討,為識別代碼的參考值的相似性。 目前主流的 程序代碼相似度 檢測系統(tǒng) ( 1) 統(tǒng) 作 者是 該系統(tǒng) 可檢測的編程語言 包括 C, C+, 系統(tǒng)在檢測網(wǎng)頁返回到用戶。但由于作者沒有說明該系統(tǒng)的技術(shù)的使用,所以我們不知道在所有的實現(xiàn)細節(jié)。 ( 2) 統(tǒng) 這 是 由 計實現(xiàn)的 。該系統(tǒng)在處理程序時,通過刪除注釋、大小寫統(tǒng)一、替換同義詞等步驟比較代碼的相似度。該系統(tǒng)不同版本所使用的程序檢測算法也存在不同。 ( 3) 統(tǒng) 本 系統(tǒng) 是 由 、 和 計實現(xiàn) , 采用了 法 對代碼的相似度進行檢測,在相同的形式使用的相似性度量的軟件,使用 言, ,目 前僅支持 C、 C+、 編程語言的檢測。 ( 4) 統(tǒng) 由 計實現(xiàn)的 ,該系統(tǒng)的核心 思想是 衡量 序相似的序列檢測串排列。 首先將 待檢測的 程序源代碼進行 預(yù) 處理, 使其排列為一種緊縮的格式 ,隨后系統(tǒng)將其中 的一個緊縮串 進行 拆分 ,拆分 為若干份,然后,各部分的幾份分割和另一個程序的緊縮字符串匹配后,不是因為這樣的結(jié)構(gòu)和語法規(guī)則 。 和編程語言 相比,該 算法能夠 檢測 大多數(shù)的語言。 第 1 章 緒論 論文組織簡介 本論文共分為五個章節(jié)。 第一部分 主要 介紹了程序相似度檢測系統(tǒng)開發(fā)的背景,國內(nèi)外關(guān)于程序相似度檢測的技術(shù),并介紹了程序相似度檢測的核心理念和算法。 第二部分主要講述了 程序代碼相似度檢測的 相關(guān)概念和 工作理論,分析了 程序抄襲行為的 特點并對其進行分類 ,并介紹了 代碼抄襲者常用的掩飾性行為,列舉了 常用的檢測相似代碼的方法及工作原理, 并對其各類度量方法進行分類和詳細介紹。 第三章給出了程序代碼相似度檢測系統(tǒng)的分析與設(shè)計 思路 ,對該系統(tǒng)的功能模塊作了 簡要 分析。 第四章主要是關(guān)于程序代碼相似度檢測系統(tǒng)的實現(xiàn),分析了系統(tǒng)各功能模塊之間的聯(lián)系,并對每個功能模塊作了詳細的介紹。 第五章給出了該系統(tǒng)的運行界面和測試結(jié)果,并對各算法的運行效率作了比較。 章小結(jié) 本章 屬于緒論 , 主要介紹了本課題的研究背景和研究意義。 在此基礎(chǔ)上 , 對國內(nèi)外的 程序代碼相似度檢測技術(shù)的 進行分析 ,通過分析本課題國內(nèi)外 的技術(shù)和系統(tǒng)為本課題的研究提供研究思緒和 借鑒。 第 2 章 程序代碼相似度檢測的理論基礎(chǔ) 第 2 章 程序代碼相似度檢測的理論基礎(chǔ) 相關(guān)概念的引入 程序抄襲描述 程序語言課程隨計算機技術(shù)的發(fā)展在高校越來越重視 ,不僅計算機專業(yè)的學(xué)生學(xué)習(xí)程序語言 ,其他專業(yè) ,甚至是非工科專業(yè)也開展了程序語言的課程 ,比如應(yīng)用非常廣泛的 C 語言程序課程。除了 C 語言程序設(shè)計課程外 ,C+,C#等高級程序語言課程也非常流行。程序語言課程的作業(yè)主要是以編程的方式來鍛煉學(xué)生的程序思維能力 ,這就不可避免的出現(xiàn)了代碼抄襲的問題。 程序代碼的運行必須嚴格遵守程序語言的規(guī)范 ,必須通過編譯器的檢測 ,這就使 得程序代碼源文件一般都是以電子稿形式進行提交與檢測 ,互聯(lián)網(wǎng)技術(shù)的普及 ,電子資料下載的快捷性 ,讓許多學(xué)生能夠輕而易舉的從網(wǎng)上搜索到相關(guān)代碼 ,進而抄襲。抄襲代碼不僅讓老師的教學(xué)事倍功半 ,更讓學(xué)生失去了自己學(xué)習(xí)程序語言的一個途徑。很多學(xué)生進行抄襲的時候會或多或少的修改一部分文字來迷惑老師 ,同樣 ,程序代碼的抄襲也是如此。同時 ,由于程序代碼不像普通文本那樣沒有特別的規(guī)范 ,程序代碼的修改必須保證代碼正確運行的前提下才有作用。這就造成了代碼抄襲過程中抄襲程度的不同和檢測難度級別的不同。 修改 他人程序分成了七個難度級別。如下圖 示。 第 2 章 程序代碼相似度檢測的理論基礎(chǔ) 圖 襲程序代碼修改的難度等級圖 示不對源程序進行任何修改 ,這種抄襲最簡單 ,不用費事 ,所以有不少抄襲屬于這種情況。 示只修改了源程序的注釋 ,這種抄襲也簡單 ,因為修改注釋肯定不會影響源程序的結(jié)果。 示修改了源程序的部分標示符 ,比如函數(shù) ,宏 ,變量的名字 ,這種修改需要注意其他使用了這個標示符的地方也要做同樣的修改 ,通過計算機的查找替換功能也較容易做到。 示修改程序變量聲明的位置 ,這種修改需要注意的是修改了變量的位置后要保持程序的編譯 正確并且結(jié)果也正確。 示用函數(shù)體代替函數(shù)調(diào)用 ,相當于減少函數(shù) ,這種修改也需要驗證編譯和結(jié)果。 示修改程序語句 ,比如 i+變成 i+=l 這種等價替換。 示修改程序的控制邏輯 ,這種修改比較難 ,一般人也難以做到 ,抄襲者也很少這樣去修改。 兩種剽竊意味著更復(fù)雜的,如果有人這樣做,這是語言的深層把握。 . 襲程度也給出了 10 個難度級別 ,基本和 蓋的范圍一樣 ,只是給出了更細分的標準。 4*析了抄襲的一般 規(guī)律 ,總結(jié)出抄襲轉(zhuǎn)換基本是由兩類轉(zhuǎn)換構(gòu)成 :一第 2 章 程序代碼相似度檢測的理論基礎(chǔ) 個是跟程序機構(gòu)無關(guān)的詞匯級修改 ,另一個是較復(fù)雜的結(jié)構(gòu)級修改。 濱孫 認為從 詞匯級的修改,結(jié)構(gòu)級修改包括 在實際的教學(xué)實踐中 ,學(xué)生一般都是初學(xué)者 ,大多抄襲的學(xué)生僅僅在詞匯上下工夫 ,如果說去修改程序的結(jié)構(gòu) ,往往費時又費力 ,閱讀別人的程序也不是件容易的事情 ,這樣結(jié)構(gòu)級修改還不如自己動手寫新的程序。也有一種情況就是 ,通過參考別人寫的程序再通過自己理解寫出的程序可能和原來的程序有相似之處 ,但這種不應(yīng)當看做是抄襲 ,這是一種實實在在的學(xué)習(xí) 過程 。所以抄襲的學(xué)生大多是前幾個詞匯層面的修改,這是比較容易檢測。 代碼相似度定義 相似度:用于評價兩個源碼之間相關(guān)程度。通過利用特殊的測試機制及方法,衡量源碼的相似程度。一般用一個數(shù)值 ,=,0;iX=ij= cicj i,j0;X 假設(shè)輸入序列為 X= 2,X m、 Y= 2,Y n。輸出 數(shù)組 為: c, b, 中 bij表示 求得 cij值 的 子問題 , cij表示 j 的公共子序列的長度, h表示 問題的 最優(yōu)解 。 法的模式匹配流程圖如圖 示。 第 4 章 程序代碼相似度檢測系統(tǒng)的分析與設(shè)計 圖 法流程圖 相似度計算模塊 加權(quán)屬性相似度計算模塊包括屬性統(tǒng)計和 計算屬性 相似度 等功能 。其中 ,屬性相似度計算模塊 是由 性相似度計算模塊 和 物理屬性相似度計算模塊組成 。加權(quán)屬性相似度計算模塊由顯示區(qū)和操作區(qū)兩部分構(gòu)成 , 顯示區(qū) 是顯示 源代碼和對應(yīng)屬性的區(qū)域 , 操作區(qū)則是針對所要識別的源代碼進行操作 的區(qū)域 , 以 滿足 識別源代碼相似性的基本需求。 根據(jù)兩個程序的最長公共子串,對兩個程序進行相似度的計算,這項工作通過以下公式來實現(xiàn): ,B) = (2*最長公共子序列長度 )/(A, B 文本的總長度 ) 結(jié)果輸出模塊 將結(jié)果按相似度的高低排序后寫入指定的文件,以 便教師查看檢測結(jié)果。 輸入序列 X=2, ,序列 Y=2, ,cij=0 cij=c1 cij=cj,ci 開始 i=0 或 j=0 j 結(jié)束 i=m,j=n N N N Y Y Y 第 4 章 程序代碼相似度檢測系統(tǒng)的分析與設(shè)計 章小結(jié) 本 章是系統(tǒng)的分析和設(shè)計章節(jié),本章是整個系統(tǒng)研究的重點章節(jié),本章 分析了系統(tǒng)的運行流程以及對整個流程進行了說明, 劃分了不同的功能模塊,并對每個模塊進行了設(shè)計。 第 5 章 程序代碼相似度檢測系統(tǒng)的實現(xiàn) 第 5 章 程序代碼相似度檢測系統(tǒng)的實現(xiàn) 開發(fā)環(huán)境與開發(fā)平臺 開發(fā)環(huán)境 目前, 大多數(shù)學(xué)生 是在 境下進行 程序編譯 、 調(diào)試和運行 。為了實用需要 , 因此,本文 采用 P 操作系統(tǒng)作為程序相似代碼識別系統(tǒng)的運行環(huán)境。 開發(fā)平臺 本系統(tǒng)采用 作為開發(fā)平臺。 程序代碼相似度檢測的實現(xiàn)技術(shù) 術(shù)的優(yōu)點 一個 被普遍使用的網(wǎng)絡(luò)匯編 語言 , 它 具有便捷 、面向?qū)ο蟆?可移植性、健壯性安全性等特點, 具有很高的性能。 簡單性: 除了 C/C+中 某些偶然發(fā)生的出錯功能。并將 常使用的功能 (如對字符串的操作) 加以簡化。 面向?qū)ο笮裕好嫦驅(qū)ο蟮?便是容許 開發(fā)者 策劃實現(xiàn)出能夠重用的組件,或者直接利用 已 編好的 組件, 能夠增加系的可 維護 性 。 網(wǎng)絡(luò)性: 跟著 網(wǎng)絡(luò) 的成長 而 發(fā)展,它的很多公用與應(yīng)用均 與網(wǎng)絡(luò)相關(guān)。 可移植性: 編譯程序時 沒有 編譯 為 機器語言,而是編譯 為 與操作系統(tǒng)獨立 的 “字節(jié)碼 ”。 為了實現(xiàn) 言 的可移植性 , 運行 序必須按照 。 運行 序時, 字節(jié)碼被 時編譯器編譯為 能夠被目標平臺接受的 機器語言。因此, 利用 夠 使序在 跨平臺 運行 。 魯棒性 : C/C+中易出錯 、影響程序穩(wěn)定 的功能刪除了,如指第 5 章 程序代碼相似度檢測系統(tǒng)的實現(xiàn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大二(交通工程)交通規(guī)劃原理期末試題
- 2025年大學(xué)二年級(中醫(yī)康復(fù)技術(shù))針灸基礎(chǔ)試題及答案
- 2025年大學(xué)公共基礎(chǔ)(計算機應(yīng)用技能)試題及答案
- 2025年中職第一學(xué)年(物流服務(wù)與管理)物流倉儲管理試題及答案
- 2025年大學(xué)大四(理學(xué))理學(xué)專業(yè)畢業(yè)設(shè)計答辯測試題及解析
- 2025年高職建筑(建筑工程計量)試題及答案
- 2025年高職(大數(shù)據(jù)技術(shù))大數(shù)據(jù)分析案例應(yīng)用階段測試題及答案
- 2025年高職熱能與發(fā)電工程(熱力系統(tǒng)維護)試題及答案
- 2025年大學(xué)社區(qū)護理實訓(xùn)(護理實操訓(xùn)練)試題及答案
- 2026年安慶職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試模擬試題帶答案解析
- 上海市上戲附中2025年物理高一上期末學(xué)業(yè)水平測試模擬試題含解析
- 內(nèi)審工作年終總結(jié)
- 物業(yè)安全生產(chǎn)崗位責任清單
- 護士臨床實踐總結(jié)與反思報告
- 2025年農(nóng)村會計考試試題及答案
- 2025年國家開放大學(xué)(電大)《證券投資分析》期末考試復(fù)習(xí)試題及答案解析
- 《麻醉學(xué)》教學(xué)資料
- 叉車搬家服務(wù)合同范本
- 2025年三力測試專用題庫及答案
- 2026年南陽科技職業(yè)學(xué)院單招職業(yè)適應(yīng)性考試必刷測試卷及答案1套
- DB3301∕T 0268-2018 社會力量參與公共文化服務(wù)評估規(guī)范
評論
0/150
提交評論