用Java写成的编译原理课程设计 主要包括两个工程 一个是词法分析器 输入词法转化NFA 》DFA 最后识别待分析的字符串 语法分析器是输入二型文法 生成LR1 的项目集簇的DFA 然后生成LR分析表 最后生成对输入字符串的分析过程的表 如果还是不清楚 压缩包中还有程序说明的txt文件 并且程序代码中也有大量的注释 希望可以帮下载的同学成功躲过编译原理老师的进攻 哦哈哈哈哈 ">用Java写成的编译原理课程设计 主要包括两个工程 一个是词法分析器 输入词法转化NFA 》DFA 最后识别待分析的字符串 语法分析器是输入二型文法 生成LR1 的项目集簇的DFA 然后生成LR分析表 最后生成对输入字符串的分 [更多]
2021-11-21 15:34:09 33KB Java 编译原理 词法分析器
1
自定义一个文法集,输入文法产生式,计算文法的FIRST,FOLLOW和SELECT集合, 利用SELECT集合构造预测分析表,接着用预测分析程序,栈 和预测分析表对输入串进行分析,给出分析过程。
2021-11-20 14:56:49 5KB 编译原理 LL1 语法分析
1
根据文法编制预测分析法语法分析程序,以便对输入的符号串进行语法分析。输入一个字符串,输出该字符串是否为正确的句子。给出分析过程,可以进行错误处理。
2021-11-20 11:27:10 11KB 预测分析法语法分析器 编译原理
1
C++编写,基于书中的一套语法进行判断是否合法,程序中的'@'代表空,注意无法自定义语法。
2021-11-19 14:30:17 600KB 编译原理
1
利用C语言,编写的LL语法分析器,用于判断语法是否正确。
2021-11-18 09:45:47 1KB C语言 LL语法分析器
1
文章讨论了LL(1)语法分析器的工作原理和过程, 以具体实例说明语法定义、造表和总控程序的实现过程。 实现语言是C++
1
包括词法分析器、lr(k)语法分析器、递归下降语法分析器、中间代码生成器以及对应的实验报告。中间代码生成器是在词法分析器和语法分析器的基础上做的。写的很乱仅供参考。
2021-11-17 21:50:39 1.43MB 编译原理
1
是利用FLEX生成的词法分析器,调用YYLEX()来实现token的获取。
2021-11-17 15:30:54 44KB 编译原理
1
关于SLR,LR(1)及LALR(1)在实践中的效率及状态集规模的探讨以及程序代码 摘要: 编译器的构造中,语法分析是一个非常关键也是较难的部分之一,虽然现在已经有非常成熟的语法分析器的生成器,但是真正大的编译器设计者还是会选择自己处理语法分析。其中,自顶向下的方法有递归下降分析,非递归预测分析等,但是前者递归无法满足程序嵌套的深入,很容易形成栈溢出;后者手工构造对于稍微大的文法无法显得捉襟见肘。 幸运的是:自底向上分析能够很好的解决上述问题。其中LR(0), LR(1)以及LALR(1)对程序设计语言语法分析提供了很好的解决方案。但是他们三者的性能如何,到底实际中适和使用哪种分析方法?很多书都提出LALR分析方法同时拥有了前两者的优点,所以是最提倡的。 据笔者所知,YACC(Yet Another Compiler- Compiler )语法分析器生成器所使用的方法正是LALR分析法。 本文旨在用程序证明LALR语法分析方法的最优性以及LR(1)方法的不可行性。 作者此次正好利用编译原理论文的机会,和大家一起去实践的证明一下吧!
2021-11-17 09:32:05 1.12MB LALR LR(1)
1
十、设计SAMPLE语言的语法、语义分析器,输出四元式的中间结果。 检查要求: a)启动程序后,先输出作者姓名、班级、学号(可用汉语、英语或拼音)。 b)请求输入测试程序名,键入程序名后自动开始编译。 c)输出四元式中间代码(样式见样板输出3和4)。 d)能发现程序的语法错误并输出出错信息。
2021-11-15 21:48:21 32.63MB 编译原理 课程作业
1