文件名称:3LL(1)
- 所属分类:
- 编译器/词法分析
- 资源属性:
- [C/C++] [源码]
- 上传时间:
- 2012-11-26
- 文件大小:
- 18kb
- 下载次数:
- 0次
- 提 供 者:
- girla*****
- 相关连接:
- 无
- 下载说明:
- 别用迅雷下载,失败请重下,重下不扣分!
介绍说明--下载内容均来自于网络,请自行研究使用
编译原理上机—语法分析1
目的:熟练掌握自上而下的语法分析方法,并能用C++程序实现。
要求:
1. 使用固定的文法
2. 对于任意给定的输入串(词法记号流)进行语法分析,递归下降方法和非递归预测分析方法可以任选其一来实现。
3. 要有一定的错误处理功能。即对错误能提示,并且能在一定程度上忽略尽量少的记号来进行接下来的分析。可以参考书上介绍的同步记号集合来处理。
可能的出错情况:idid*id, id**id, (id+id, +id*+id ……
4. 输入串以#结尾,输出推导过程中使用到的产生式。例如:
输入:id+id*id#
如果输入串有错误,则在输出中要体现是跳过输入串的某些记号了,还是弹栈,弹出某个非终结符或者是终结符了,同时给出相应的出错提示信息。比如:
idid*id对应的出错信息是:“输入串跳过记号id,用户多输入了一个id”;
id**id对应的出错信息是:“弹栈,弹出非终结符F,用户少输入了一个id”
(id+id对应的出错信息是:“弹栈,弹出终结符 ) ,用户少输入了一个右括号(或者说,括号不匹配)”
-Compile principle course design. From up to down. syntax analysis!
目的:熟练掌握自上而下的语法分析方法,并能用C++程序实现。
要求:
1. 使用固定的文法
2. 对于任意给定的输入串(词法记号流)进行语法分析,递归下降方法和非递归预测分析方法可以任选其一来实现。
3. 要有一定的错误处理功能。即对错误能提示,并且能在一定程度上忽略尽量少的记号来进行接下来的分析。可以参考书上介绍的同步记号集合来处理。
可能的出错情况:idid*id, id**id, (id+id, +id*+id ……
4. 输入串以#结尾,输出推导过程中使用到的产生式。例如:
输入:id+id*id#
如果输入串有错误,则在输出中要体现是跳过输入串的某些记号了,还是弹栈,弹出某个非终结符或者是终结符了,同时给出相应的出错提示信息。比如:
idid*id对应的出错信息是:“输入串跳过记号id,用户多输入了一个id”;
id**id对应的出错信息是:“弹栈,弹出非终结符F,用户少输入了一个id”
(id+id对应的出错信息是:“弹栈,弹出终结符 ) ,用户少输入了一个右括号(或者说,括号不匹配)”
-Compile principle course design. From up to down. syntax analysis!
(系统自动生成,下载前可以参看下载内容)
下载文件列表
3LL语法分析\bin\Debug\语法分析1.exe
...........\main.cpp
...........\obj\Debug\main.o
...........\语法分析1.cbp
...........\语法分析1.depend
...........\语法分析1.layout
...........\bin\Debug
...........\obj\Debug
...........\bin
...........\obj
3LL语法分析
第三次上机作业(第10周上机).doc
...........\main.cpp
...........\obj\Debug\main.o
...........\语法分析1.cbp
...........\语法分析1.depend
...........\语法分析1.layout
...........\bin\Debug
...........\obj\Debug
...........\bin
...........\obj
3LL语法分析
第三次上机作业(第10周上机).doc