LLandLR LL(0)和SLR(1)语法分析Java实现
2021-06-09 15:19:58 4KB 附件源码 文章源码
1
给出一个文法G,再给出一个程序段s,程序可以根据所给出的文法G对输入的程序段s进行SLR分析。在对文法进行分析的过程中会输出FIRST集、FOLLOW集、状态集、分析过程等,最终会输出程序的正误。
2021-06-06 15:30:48 60KB 编译原理 SLR文法 JAVA
1
SLR(1)语法分析器
2021-05-30 22:21:54 527KB c++ c语言 编译器
1
完整的编译原理slr(1)文法的判定及其分析器的构造课程设计报告,附录代码有点长,可适当删除,保留核心代码
2021-05-30 21:08:04 934KB 编译原理 文法
1
该编译器的词法分析部分能够识别以 PASCAL 语言编写的源程序,并进行词法分析给出分析结果。该词法分析器能够实现:有正确的单词流输出(类型码、坐标、单词的值);能够检查词法是否有错误(输出词法错误如果没有错误,返回 0,如果有错误,需要报告词法错误在源程序中的位置。能够越过错误,分解下一个单词,直到源程序结束);能够过滤空格、Tab、回车、识别注释,并去掉注释;整数能够处理越界(整数一旦超过 65535,则自动识别为 65535),标识符识别前 8 位(标识符一旦超过 8,则自动识别为 8 位);该词法分析器主要经过有限自动机的状态跳转来实现,根据自动机结束状态来得到该单词的 token 值。 该编译器的语法部分采用了 SLR(1)分析法,实现对表达式、各说明语句、控制语句 进行语法分析。若语法分析正确,则用语法制导翻译进行语义分析;若是出错,则报告语法错误,并给出语法在源程序中的位置。该编译器语义分析部分采用了自底向上分析的 S 属性文法,该阶段最终实现生成四元式的中间代码。
1
课设得了优 :-) 编译原理的课程设计SLR(1)分析器 包含求FIRST,FOLLOW集合 LR(0)项目规范集组 SLR(1)分析表 SLR(1)分析器
2021-05-28 11:02:06 386KB 编译原理 课程设计 SLR SLR1
1
摘要: 编译器的构造中,语法分析是一个非常关键也是较难的部分之一,虽然现在已经有非常成熟的语法分析器的生成器,但是真正大的编译器设计者还是会选择自己处理语法分析。其中,自顶向下的方法有递归下降分析,非递归预测分析等,但是前者递归无法满足程序嵌套的深入,很容易形成栈溢出;后者手工构造对于稍微大的文法无法显得捉襟见肘。 幸运的是:自底向上分析能够很好的解决上述问题。其中LR(0), LR(1)以及LALR(1)对程序设计语言语法分析提供了很好的解决方案。但是他们三者的性能如何,到底实际中适和使用哪种分析方法?很多书都提出LALR分析方法同时拥有了前两者的优点,所以是最提倡的。 据笔者所知,YACC(Yet Another Compiler- Compiler )语法分析器生成器所使用的方法正是LALR分析法。 资源中是LALR语法分析器分析表的自动构造算法的所有代码。 能够分析标准C语言文法等,采用和YACC类似的方式LALR高效版本产生分析表。 其中论文本文旨在用程序证明LALR语法分析方法的最优性以及LR(1)方法的不可行性。 作者此次正好利用编译原理论文的机会,和大家一起去实践的证明一下吧! 关键词:LR(0) ;LR(1);LALR(1);语法分析;规模;效率;论证 YACC
2021-05-25 15:32:36 1.12MB LALR LR(1) SLR 语法分析
1
1 课设内容 本课程设计任务: 实现一个小型编译程序。 (1) 输入:高级语言源程序; (2) 输出:四元式程序(必做) 汇编语言程序(选做)。 小型编译程序执行分两个阶段: (1) 第一阶段,将高级语言源程序翻译成四元式程序; (2) 第二阶段,将四元式程序翻译成汇编语言目标程序。 本次课程设计要求所有同学完成小型编译程序的第一阶段(必做),第二阶段为选做题目(完成加分)。 2 开发环境 c语言 win10 vs2019 3 参考书籍 《编译教程(第四版)》胡元义 4 SLR(1)分析表 《编译原理教程(第四版)》习题解析与上机指导 链接:https://pan.baidu.com/s/18eCs2iCV-3xpk1JQy_mTXQ 提取码:0gp6 其中,第九章就是课设原题,第十一章就是参考源代码。 希望各位可以在参考书本源代码的基础上自己进行改进,不一定要以我写的这个版本为基准,付费100块,留着买鼠标它不香吗,对吧? 当然,欢迎下载,给孩子一口饭吃,孩子养了猫之后穷得快吃土了
2021-05-25 13:03:55 22KB 编译原理 SLR(1)
实现了自制的C--语言的一遍扫描编译,包括词法分析,LR(1)语法分析,属性文法+中间代码生成,MIPS编译生成编译脚本由Python实现,兼容python2.7与3.7,图形界面由WPF实现,使用了IronPython进行脚本执行 支持以下特性: 一种基本类型int 赋值表达式,循环/选择/判断/跳出语句 函数定义与函数调用 未实现: 浮点数,字符,字符串 斑点 错误检查
2021-05-13 23:28:18 24.29MB compiler mips wpf ironpython
1
SLR语法分析器,能求出FIRST、FOLLOW 集和构造出SLR分析表,出入一个句子,能动态演示匹配过程。(有完整源代码)。
2021-05-09 19:19:05 1.17MB 编译原理实验 语法分析器 SLR
1