天津理工大学编译原理实验2:语法分析.doc

天津理工大学编译原理实验2:语法分析.doc

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 PAGE 21页 共 NUMPAGES 23页 实验报告 学院(系)名称:计算机与通信工程学院 姓名 ****** 学号 ****** 专业 计算机科学与技术 班级 ****** 实验项目 实验二:语法分析 课程名称 编译原理 课程代码 0668056 实验时间 ****** 实验地点 计算机软件实验室7-215 批改意见 成绩 教师签字: 实验内容: 可选择LL1分析法、算符优先分析法、LR分析法之一,实现如下表达式文法的语法分析器: (1)E→E+T | E-T | T (2)T→T*F | T/F | F (3)F→P^F | P (4)P→(E) | i 实验目的: 1.掌握语法分析的基本概念和基本方法; 2.正确理解LL1分析法、算符优先分析法、LR分析法的设计与使用方法。 实验要求: 1.按要求设计实现能识别上述文法所表示语言的语法分析器,并要求输出全部分析过程; 2.要求详细描述所选分析方法针对上述文法的分析表构造过程; 3.完成对所设计语法分析器的功能测试,并给出测试数据和实验结果; 4.为增加程序可读性,请在程序中进行适当注释说明; 5.整理上机步骤,总结经验和体会; 6.认真完成并按时提交实验报告。 【实验过程记录(源程序、测试用例、测试结果及心得体会等)】 一、构造优先关系表 使用算符优先文法: 构造FIRSTVT集 由E?E+… | E-…得,FIRSTVT(E)={ + , - }; 由T?T*…| T/…得,FIRSTVT(T)={ * , / }; 由F?P^…得,FIRSTVT(P)={ ^ }; 由P? (… | i 得,FIRSTVT(P)={ ( , i }; 由F?P 得,FIRSTVT(P) ? FIRSTVT(F) ,即FIRSTVT(F) = { ^ , ( , i}; 由T?F 得,FIRSTVT(F) ? FIRSTVT(T) ,即FIRSTVT(T) = { *, /,^ , ( , i}; 由E?T 得,FIRSTVT(T) ? FIRSTVT(E) ,即FIRSTVT(E) = { +,-,*, /,^ , ( , i }; 构造LASTVT集 由E?…+T | …-T 得,LASTVT(E)={ + , - }; 由T?…*F | …/F 得,LASTVT (T)={ * , / }; 由F?…^F 得,LASTVT (F)={ ^ }; 由P? …) | i 得,LASTVT (P)={ ( , i }; 由F?P 得,LASTVT (P) ? LASTVT (F) ,即LASTVT (F) = { ^ , ( , i}; 由T?F 得,LASTVT (F) ? LASTVT (T) ,即LASTVT (T) = { *, /,^ , ( , i}; 由E?T 得,LASTVT (T) ? LASTVT (E) ,即LASTVT (E) = { +,-,*, /,^ , ( , i }; 构造优先关系表 由E?…+T | …-T 得+FRISTVT(T),- FRISTVT(T) 即+ *, + /,+ ^,+ ( ,+ i,- *,- /,- ^,- ( ,- I; 由T?…*F | …/F 得*FRISTVT(F),/ FRISTVT(F) 即* ^, * ^,* (,/ i, / /, / ^,/ (,/ i; 由F?…^F 得^FRISTVT(P),即^ (,^ i; 由P?(E… | i得 ^FIRSTVT(E),即( + ,( - ,( * ,( /,( ^,( (,( i; 由E?E+…| E-… 得LASTVT(E)+, LASTVT(E)- 即+ +, + -,- - ,- +,* +,/ +,* -,/ -,) +,i +,) -; 由T?T*…| T/… 得LASTVT(T)*, LASTVT(T)/ 即* *,* /, / *, / /, ^ *,^ /,( *, ( /, i *,i /; 由F?P^…, 得LASTVT(P)^ 即( ^,i ^; 由P?(E… | i, 得LASTVT(E)), 即 + ),- ), * ),/ ),^ ),) ),i ); 由#E# 得 # = # 由# FIRSTVT(E) 即# +,# -,# *,# /,# ^,# (,# i; 由LASTVT(E) ) 即+ #,- #,* #,/ #,^ #,) #,i #; 优先关系表 + - * / ^ i

文档评论(0)

a13355589 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档