针对代码抄袭及软件盗版现象,研究了3种传统基于程序结构相似性检测方法,并提出一种基于语法树的程序相似度检测方法。该方法先对源程序进行语法分析得到其语法树,然后基于语法树重点分析源程序的语法结构并计算其相似度,从语法结构的角度消除高级抄袭手段所带来的干扰。实验结果表明,基于语法树的程序相似度检测方法可以较好地检测增加冗余语句、控制结构的等价替换等10种抄袭手段。
2021-11-21 17:55:21 2.29MB 工程技术 论文
1
北邮大三编译原理课学期内程序,注释很详细
2021-11-21 16:36:34 4KB 编译原理 语法分析 LL1文法
1
python简单易学,与C和Java比,Python的学习成本和难度曲线不是低一点,更适合新手入门,自底向上的技术攀 爬路线。这个入门教程对于有经验的人来说,一两天就能入门python,先订个小目标爬个小山,然后再往更高的山峰前进。而不像C和JAVA光语言学习本身,对于很多人 来说就像珠穆朗玛峰一样高不可攀。 明确优雅:Python的语法非常简洁,代码量少,非常容易编写,代码的测试、重构、维护等都非常容易。一 个小小的脚本,用C可能需要1000行,用JAVA可能几百行,但是用Python往往只需要几十行!
1
用Java写成的编译原理课程设计 主要包括两个工程 一个是词法分析器 输入词法转化NFA 》DFA 最后识别待分析的字符串 语法分析器是输入二型文法 生成LR1 的项目集簇的DFA 然后生成LR分析表 最后生成对输入字符串的分析过程的表 如果还是不清楚 压缩包中还有程序说明的txt文件 并且程序代码中也有大量的注释 希望可以帮下载的同学成功躲过编译原理老师的进攻 哦哈哈哈哈 ">用Java写成的编译原理课程设计 主要包括两个工程 一个是词法分析器 输入词法转化NFA 》DFA 最后识别待分析的字符串 语法分析器是输入二型文法 生成LR1 的项目集簇的DFA 然后生成LR分析表 最后生成对输入字符串的分 [更多]
2021-11-21 15:34:09 33KB Java 编译原理 词法分析器
1
1. 学习所提供的“表达式文法”的LR分析处理 理解 calc1.l, calc1.y, calc2.l, calc2.y的内容 在eclipse中建立工程,对calc3.l, calc3.y调试运行 2. 学习lrgram.txt所提供的文法 与递归下降分析所提供的文法作比较 3. 学习、理解 Makefile 文件的格式及写法(选做) 4. 编写lrgram所提供文法的LR语法分析程序 (1)编写生成“语法树”的相关程序,包括 bison源程序 lrparser.y flex源程序 lrlex.l 语法树相关程序 ast.h 和 ast.c (2)其它相关函数(如main函数)等 main.c, (3)使编译得到的rdparser最终从命令行读取要分析的程序test.c,分析后调用showAst打印该程序的结构。 5. 将分析中的所有标识符及其属性保存至符号表(选做) 分析并解决不同作用域下 相同变量名的保存 与 查找问题
2021-11-21 13:12:36 4KB 编译技术 LR语法分析
1
编译原理实验 语法分析 Sample语言 语法分析是编译过程的核心部分,其主要工作就是指出错误 编译原理实验 语法分析 Sample语言 语法分析是编译过程的核心部分,其主要工作就是指出错误
2021-11-21 10:57:55 226KB 编译原理实验
1
北邮 编译原理与技术 课程实验 语法分析程序 用C++实现,包含递归下降分析,LL(1),LR(1),YACC的所有源代码及测试输入文件
2021-11-21 04:00:16 1.55MB 北邮 编译原理 语法分析程序
1
主要讲一些平常在使用过程中python的编码方式和规则,比如说括号,缩进,空格,注释,类,字符串, 文件和sockets,格式和语法规范等。
2021-11-20 18:51:39 906KB 字符串 编码 语法 文件
1
自定义一个文法集,输入文法产生式,计算文法的FIRST,FOLLOW和SELECT集合, 利用SELECT集合构造预测分析表,接着用预测分析程序,栈 和预测分析表对输入串进行分析,给出分析过程。
2021-11-20 14:56:49 5KB 编译原理 LL1 语法分析
1
Unit2__语法专项课件.ppt
2021-11-20 13:05:57 445KB