北邮编译原理实验--LR语法分析-实验报告(共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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 你所不知道的溥仪课件
- 你我同行走向成功教学课件
- 2017-2018学年高一生物苏教版必修二ppt课件:第四章 第三节 基因控制蛋白质的合成
- 你我不散场的青春教学课件
- 预防保健减少危害健康习惯之活动戒菸及戒酒课件
- 2017-2018学年高一历史人民版必修2预习导学ppt课件 血与火的征服与掠夺
- 人教版选修5第三章第三节自然灾害中的自救与互救课件
- 2018年聚焦中考初中生物中考复习ppt课件专题4组织器官系统
- 2018年新版语文版二年级下册15古诗二首 小儿垂钓 夜书所见ppt课件
- 激励理论 第四章 价值观态度与工作满意度课件
- 2017-2018学年高中生物浙科版(浙江专版)必修二ppt课件:第三章+第四节+遗传信息的表达——RNA和蛋白质的合成
- 你形像价值百万员工形象礼仪专业培训实用课件
- 冷却系常见故障现象及诊断课件
- 冷却系统设计课件
- 某公立医院工资总额和院长课件