版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、LIAOCHENG UNIVERSITY计算机学院实验报告【2016 2017 学年第 2学期】【一、基本信息】【实验课程】编译原理【设课形式】独立口非独立【课程学分】4【实验项目】实验二语法分析器的设计【项目类型】基础口综合 设计口研究创新口其它【项目学时】4【学生姓名】【学号】【系别专业】软件开发【实验班组】级班组台【同组学生】【实验室名】综合实验楼【实验日期】【报告日期】【二、实验教师对报告的最终评价及处理意见】实验成绩:(涂改无效)指导教师签名:年 月日注:要将实验项目、实验课程的成绩评定及课程考核办法明确告知学生,并报实验管理中心备案【三、实验预习】实验目的和要求:1. 掌握自上而下
2、语法分析的基本思想;2. 掌握利用预测分析法进行语法分析的原理和过程;3. 熟悉文法的机内表示;4. 掌握语法分析器的设计与调试,提高编程能力、动手能力以及独立分析问题、解决问题的能力和综合运用所学知识的能力。实验内容和原理或涉及的知识点(综合性实验):1. 输入任意文法,改写文法使其成为 LL(1)文法。2. 构造文法的预测分析表;3. 设计堆栈和预测分析表的机内表示;4. 设计并书写语法分析程序;5. 调试并运行语法分析程序;6. 实验结果分析分析程序中文法存储所采用的数据结构分析结果并写出自己的心得体会提示:对于所选定的分析方法,如有需要,应选择一种合适的数据结构,以构造所给文法的机内表
3、示。实验条件(实验设备、软件、材料等):1. 装有Codeblocks 的电脑一台。2. 实验环境:WINDOWS 下,工具为 Turbo C2.0 或 Visual C 6.0 。实验考核方式:1. 提交实验报告2. 演示程序和答辩(抽查)实验预习实验设计方案(实验方法、步骤、操作过程、设计型实验、实验数据记录表格):实验预习成绩(涂改无效)合格口不合格口【四、实验过程、数据和实验结果记录】实验方法、步骤、操作过程的记录描述或程序代码。实验过程中输入/输岀数据、程序运行结果的记录。(可加附页)1. 输入任意文法,改写文法使其成为 LL(1)文法。答:输入文法GE:E T|EATT F|TMF
4、F( E ) | iA +| -M * | /(1)改写文法。对形如:U Ux|y的产生式(其中x,y V+ , y不以U开头),引入一 个新的非终结符U 后,可以等价地改写成为:U yU U x U | 显然改写后,U和U 都不是左递归的非终结符。因此文法G E按上述方法消去左递归后可等价地写成:ETPPt AT P| &TFW | &W MFW | &F( E ) | iM * | /2. 构造文法的预测分析表;i+-+/()#EE-TEE-TE EE -ATE E-ATE E - ?E - ?TT-FT T-FT TT - ?T - ?TTT - ?T - ?-MFT -MFT FF-i
5、F-(E)AA-+A-MM-*M-/3. 设计堆栈和预测分析表的机内表示;堆栈表示:预测分析表的机内表示4.设计并书写语法分析程序;语法分析程序代码:#in clude#in clude#i ncludevstri ng.h#in cludechar A20;char B20;char v120=i,+,*,(,),#;char v220=E,G,T,S,F;int j=0,b=0,top=0,l;typedef struct typechar orig in;char array5;int len gth;type;type e,t,g,g1,s,s1,f,f1;type C1010;voi
6、d prin t()int a;for(a=0;a=top+1;a+)prin tf(%c,Aa); prin tf(tt);void prin t1() int j;for(j=0;jb;j+)printf();for(j=b;j=l;j+)prin tf(%c,Bj); prin tf(ttt);void mai n()int m,n, k=0,flag=0,fi ni sh=0;char ch,x;type cha;e.origi n=E;strcpy(e.array,TG);e. len gth=2;t.orig in=T;strcpy(t.array,FS);t.le ngth=2;
7、g.origi n=G;strcpy(g.array,+TG);g.len gth=3;g1.origi n=G;g1.array0=s:gl.len gth=1;s.origi n=S;strcpy(s.array,*FS);s.len gth=3;sl.origi n=S;s1.array0=A;sl.len gth=1;f. origi n=F;strcpy(f.array,(E);f.len gth=3;fl.origi n=F; f1.array0=i;f1e ngth=1;for(m=0;m=4;m+)for(n=0;n,cha.origi n); for(j=0;j=0;j-)A
8、+top=cha.arrayj;if(Atop=A)top-;elseprin t();prin t1();prin tf(%c 出错 n,x);exit(1);while(fi nish=O);5.调试并运行语法分析程序; hwd 2rtx?c 用冊世 三再沪巾 i;ooii,Bfor i严 J JClM li&grlu ptLBllSrfi.-tJOAT | |pFicf - |1:| rfor i j- cha LuqrWs-. I tIlJjP叫|J3 t ar i |c=i:| pructNprziEl i :GlS.Nr4. (Ik J运行结果:输入i+ (i*i ) #运行结果如
9、图一exe本弟呈序JF.能时由VL尸构J或的以,卅l要分析的早苻串=分析栈剜余字符所用产生式HEE-TGttGTT-FSttGSFF-iKGSi匹配GSs-A聃GG-/+TG#GT*+匹配ItGTT-FSttGSFF-XE)#GGEEid#E-TGKGSGTT-FS#GSGSFF-ittGSGSii匹配IIGSGS*i#S-*FSttCECSF*心H#GGGSFF-1itCOGSl1匹配HGSGSS-AttGSG#G-AttGS匹配ItCSflS-AttGttG-AICC ?输入(i+i ) *i#运行结果如图i*i#” itt*itt剩余字符E-TGT-FSU A构成的以?申结東的字符串进行分析.LUL4ace T!2!3L7L8L7屮 E :code blacksfilesXte sta bc bi nDe bu gte sta be exei BAHAF 1 s G +G己 I I . I i T F -n + i E-匹-匹G s 已 T巳s 已 已F已 + i F i B A A i * H -匹-匹-匹乍匹- s G s F d sj趨舅謚翼舞養歸 ttE ttGT ttGSF ttGSEE ttGSGT ttGSGSF ttGSGSd ttGS )GS #GSG #GSGT* #GGT #GEGSF ttGSGSi tt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025 初中散文意境营造技巧阅读理解课件
- 2025 高中阅读理解之精准概括能力课件
- 2026年食物中毒防控试题及答案
- 2026年食品安全日常监管应知应会试题及答案
- 2026年门诊儿童护理服务提升工作计划
- 甘肃省天水市甘谷县第二中学2024届年高三上学期第二次检测考试(10月)生物试卷含答案
- 稀土材料生产工保密强化考核试卷含答案
- 板带箔材精整工安全知识竞赛考核试卷含答案
- 胶印版材涂布液合成工岗前工艺控制考核试卷含答案
- 珠宝首饰评估师安全综合测试考核试卷含答案
- 统编语文九年级下册第二单元大单元教学设计
- 乐清市居民低碳驾驶与绿色出行碳普惠方法学(试行)
- 影视文学教学课件
- 中医气一元论课件
- 仪表工培训课件
- 硬笔行书书法课件
- 2025年湖北省中考语文试卷真题(含标准答案)
- 律所招聘实习生管理制度
- 《应急预案编制与演练课件模板》
- 2025年福建省《信息技术》专升本考试复习题库(含答案)
- 数学信息化教学设计
评论
0/150
提交评论