资源简介
1. 使用如下文法:
E ® E+T | T
T ® T*F | F
F ® (E) | id
2. 对于任意给定的输入串(词法记号流)进行语法分析,要求采用LR分析器来完成。手工构造LR分析表,利用移进-归约分析算法(P71 图3.12)输出(P73 表3.8)对应的动作部分。如:
输入:id*+id/(id+id)#
输出:移进
按 F->id归约
按 T->F归约
移进
error
……
3. 要有一定的错误处理功能。即对错误能提示,并且能在一定程度上忽略尽量少的记号来进行接下来的分析。
例如:
从状态0开始的记号流为:bm
将b移进之后,栈里的情况应该为: 0 b 2
此时查表发现 action[2,m]=error
输出打印:error
把A和状态1相继压入栈,用户指针后移到FOLLOW(A)对应的元素继续分析。
4. 利用P94页的表3.13的方式将错误进行分类提示,即给出具体的出错信息。
扩展:
在已有文法的基础上再加上减法“-”和除法“/”对应的产生式构成最终的文法。从而使得记号流可以处理带括号的加、减、乘、除四则运算。
代码片段和文件信息
相关资源
- 编译原理预测分析法语法分析程序
- 编译课程设计算数表达式转换成四元
- 广东工业大学编译原理试卷
- 编译原理词法分析器实验从文件读入
- 编译原理将简单程序翻译成四元式
- 《编译原理》实验 识别无符号数的词
- 编译原理语法分析器实验报告.doc版
- 在语法分析器的基础上构造的三地址
- 北方工业大学语法分析器 (1)完整实
- 编译原理实验词法,语法,语义
- 编译原理语法分析实验代码
- 编译原理三上机实验报告
- 预测分析表构造算法的程序实现
- 华中科技大学编译原理实验报告
- 编译原理课程设计词法分析程序
- 山东大学编译原理
- 基于预测分析表法的语法分析程序
- 编译原理中间代码生成
- windows下的bison.exe和flex.exe
- 编译原理lex和yacc
- 编译原理词法分析+SLR语法分析+SLR语义
- 编译原理PL/0 语言编译器分析实验报告
- 编译原理词法分析器语法分析器实验
- 编译原理课程设计SLR(1)/SLR1分析器
- 语法分析的源代码文件与相关文件
- 自顶向下预测分析语法分析程序
- 编译原理实验_赋值语句的翻译程序设
- 编译原理课程设计之编译器完整代码
- 编译原理实验 中间代码生成
- 编译原理第三版
评论
共有 条评论