下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、编译原理实验报告学号姓名时间专业班级实验题目:LR语法分析器的控制程序实验目的:手工模拟控制程序计算,对源程序进行LR语法分析主要是分析表的构造实验内容与步骤:1 .将要进行LR语法分析的源程序和LR语法分析器控制程序放在同一文件夹中。2 .用C语言编写LR语法分析器控制程序,程序代码如下:#include#include#include#includestructcode_valcharcode;charval20;;constchar*p=产生式SfE,E-E+T,E一T,T-T*F,T一F,F一(E),F:n;constcharTNT=+*()i#ETF;constintM口9=0,0,
2、4,0,5,0,1,2,3,6,0,0,0,0,99,-2,7,0,-2,0,-2,-4,-4,0,-4,0,-4,0,0,4,0,5,0,8,2,3,-6,-6,0,-6,0,-6,0,0,4,0,5,0,0,9,3,0,0,4,0,5,0,0,0,10,6,0,0,11,-1,7,0,-1,0,-1,-3,-3,0,-3,0,-3,-5,-5,0,-5,0,-5;/LR分析表列的字符/LR分析表数字化,列字符+*()i#ETF用数字012345678标识。/0表不出错,s4用4表不。/Acc用99表示/r2用-2表示状态栈初值符号栈初值栈顶指针初值语法分析结果输出至文件 par_r.txt
3、存放词法分析结果,语法分析器从该文件输入数据。结构变量,存放单词二元式。读一单词输出时使用的计数器,并非必要。符号栈t输入符号endl;/输出标题并非列定位函数原型输出step,并非必要。couttt.code0 & action!=99) state+top=action;symboltop=t.code; cint.codet.val;else if(action t.codet.val;intaction;inti,j=0;coutstept状态栈t必要。docoutj+)t;for(i=0;i=top;i+)coutstatei;coutt;输出状态栈内容,并非必要。输出符号栈内容,并
4、非必要。for(i=0;i=top;i+)coutsymboli;输出当前输入符号(单词种别),并非必要。移进读一单词归约/产生式的右部符号串长度为0,无需退栈。top=top-(strlen(p-action)-3);一为汉字,占二字节,故减3。statetop+1=Mstatetopcol(p-action0);/产生式左部符号symbol+top=p-action0;elseif(action=99)接受couttAccendl;break;else出错coutactionendl;break;while(1);intcol(charc)/将字符+*()i#ETF分别转换为数字01234
5、5678for(inti=0;i(int)strlen(TNT);i+)if(c=TNTi)returni;coutcendl;exit(0);终止程序运行3.查看生成的par_r.txt文件,对文件中的内容进行分析,更深刻理解LR语法分析的分析过程。par_r.txt文件:step状态栈符号栈输入符一0)0#i1)05#i*2)03#F*3)02#T*4)027#T*i5)0275#T*i+6)02710#T*F+7)02#T+8)01#E+9)016#E+i10)0165#E+i#11)0163#E+F#12)0169#E+T#13)01#E#Acc分析与体会:此通过上下文无关文法作为语法分析的基础,配合实例,探讨了编译原理构造中的自上而下语法分析法,并初步完成了语法分析器的实现。手工模拟控制程序计算,对源程序进行LR语法分析通过本次实验,进一步对C语言的知识进行了复习,并编写
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土方调配协议书
- 借款保证合同模板2024年
- 跨境补偿贸易合同实务指导
- 国际贸易运输合同2024年
- 个体门面出租协议书
- 2024年新款服装生产合作协议
- 口罩合同书2024年
- 无子女无财产离婚协议书的编写技巧
- 2024年服装供货长期合同
- 家庭灯具采购协议案例
- 某单位物业服务项目投标方案
- 35KV场内集电线路工程强条执行检查表
- 【多旋翼无人机的组装与调试5600字(论文)】
- 减速机知识及维修课件
- 内部项目跟投协议书(正)
- 一年级下册英语教学设计-Unit 4 food Lesson1- 人教新起点
- 5000头奶牛养殖场新建项目环境评估报告书
- 建设美丽中国通用课件
- 花卉园艺师国家职业资格二级理论知识试卷
- 光伏项目概算计算表
- 植物检疫学复习题及答案(详细)
评论
0/150
提交评论