北邮编译原理实验--LR语法分析-实验报告(共4页)

上传人:夏*** 文档编号:52074025 上传时间:2022-02-07 格式:DOCX 页数:4 大小:48.21KB
收藏 版权申诉 举报 下载
北邮编译原理实验--LR语法分析-实验报告(共4页)_第1页
第1页 / 共4页
北邮编译原理实验--LR语法分析-实验报告(共4页)_第2页
第2页 / 共4页
北邮编译原理实验--LR语法分析-实验报告(共4页)_第3页
第3页 / 共4页
资源描述:

《北邮编译原理实验--LR语法分析-实验报告(共4页)》由会员分享,可在线阅读,更多相关《北邮编译原理实验--LR语法分析-实验报告(共4页)(4页珍藏版)》请在装配图网上搜索。

1、精选优质文档-倾情为你奉上 LR语法分析 实验报告班级: 姓名:杨娜 学号:一题目:LR语法分析程序的设计与实现二设计目的: (1)了解语法分析器的生成工具和编译器的设计。(2)了解自上而下语法分析器的构造过程。(3). 理解和掌握LR语法分析方法的基本原理;根据给出的LR)文法,掌握LR分析表的构造及分析过程的实现。(4)掌握预测分析程序如何使用分析表和栈联合控制实现LR分析。三实验内容:编写语法分析程序,实现对算术表达式的语法分析,要求所分析算数表达式由如下的文法产生:E-E+T|E-T|TT-T/F|T*F|FF-i|n|(E) 四实验要求:编写LR语法分析程序,要求如下:(1)构造识别

2、所有活动的DFA(2)构造LR分析表(3) 编程实现算法4.3,构造LR分析程序五算法流程分析 程序可分为如下几步:六算法设计1.数据结构s:文法开始符号line:产生式的个数Gi0:产生式的标号Vt:终结符Vn:非终结符id:项目集编号 Prjt *next:指示下一个项目集 Prjt:存储项目的编号 ,prjt0项目编号的个数 Pointafter:圆点后的字符, pointafter0为字符个数Prjset*actorgo:存储出度Pointbefore:圆点前面的字符Form:动态数组下标,同时作为符号的编号Vn:非终结符序列Vt:终结符序列2. LR分析器由三个部分组成(1)总控程序

3、,也可以称为驱动程序。对所有的LR分析器总控程序都是相同的。(2)分析表或分析函数,不同的文法分析表将不同,同一个文法采用的LR分析器不同时,分析表将不同,分析表又可以分为动作表(ACTION)和状态转换(GOTO)表两个部分,它们都可用二维数组表示。(3)分析栈,包括文法符号栈和相应的状态栈,它们均是先进后出栈。分析器的动作就是由栈顶状态和当前输入符号所决定。(4)LR分析器的结构中:SP为栈指针,Si为状态栈,Xi为文法符号栈。状态转换表用GOTOi,X=j表示,规定当栈顶状态为i,遇到当前文法符号为X时应转向状态j,X为终结符或非终结符3.(1)识别文法的LR(0)项目集规范族的构造(2

4、)LR(0)分析表的构造(3)LR(0)分析器总控程序构造七.输入输出输入:1.在test.txt中存入文法:E-E+T|E-T|TT-T/F|T*F|FF-i|n|(E)在运行是只要输入文件名就行。2.根据提示输入要分析的句子。输出:1.输出LR分析表 2.输出句子的LR分析过程八实验结果 编译为成功。 九、实验总结 在这次课程设计期间,经过长时间的修改与调试,发现了自己的许多不足之处,由于对以前学习的知识还有些地方不太熟练,所以程序在调试初期有很多错误。比如说指针部分,稍有不注意就弄错了,还有输出格式部分,程序判断部分,在调试过程中都先后出现了些小小的问题,在此期间,通过查看相关资料,通过反复修改调试。并起到了很好的查漏补缺作用。由于调试时过程的反复与修改,不便做记录,故在此没写调试记录。由于时间有限,所遍程序没有经过特别的优化,代码可能有些重复、烦琐、纰漏,所编程序难免存在一些问题,比如说,本程序没有对多字符构成的运算符和界符作为单独的单词进行分析。通过这次课程设计,我深深的认识到,如果仅仅只是运用理论知识,是远远不够的。我们必须将理论知识学好,然后理论联系实际,才能很好的将编译原理等课程学好,并用于实际案例中。同时,经过这次课程设计,我发觉自己对以前所学的C、C+、数据结构等课程的理解加深了,知识巩固了,动手操作能力也变强了。专心-专注-专业

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!