第四章第节语法分析的实现.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

Iwillgreetthislecturewithloveinmyheart.Iwillgreetthislecturewithloveinmyheart.第四章第节语法分析的实现第1页,共30页,星期日,2025年,2月5日4.4.1实验说明实验题目:简单LR分析器的设计与实现实验目的:加深对LR语法分析基本理论的理解,锻炼实现语法分析器程序的实践能力。实验过程:(1)设计包含加、减、乘、除、括号、赋值运算的文法;(2)对设计的文法构造LR(1)分析表;(3)实现LR分析法的总控程序。输入:为词法分析实验生成的.words文件,要求能识别多个句子组成的程序。输出:输出到用户界面,包括每步的状态栈、已归约串栈、输入串和归约用的产生式(如果是归约)。给出了3个测试文件,你也可以建立自己的测试文件进行测试第2页,共30页,星期日,2025年,2月5日4.4.1实验说明【Test1.words文件内容】:x=xy-(x-100)/2;y=x*x;第3页,共30页,星期日,2025年,2月5日4.4.1实验说明【Test1.words文件内容】:x=xy-(x-100)/2;y=x*x;第4页,共30页,星期日,2025年,2月5日4.4.1实验说明【Test2.words文件内容】://原Test2.cs内容2x*(_x2-y);第5页,共30页,星期日,2025年,2月5日4.4.1实验说明【Test3.words文件内容】://原Test3.cs内容z=xy+100;第6页,共30页,星期日,2025年,2月5日4.4.2实验用文法第7页,共30页,星期日,2025年,2月5日4.4.2实验用文法第8页,共30页,星期日,2025年,2月5日4.4.2实验用文法工作过程可看成(状态序列,已归约串,输入串)的变化初始化:(s0,#,a1a2…an#)每步结果:(s0s1…sm,#X1X2…Xm,aiai+1…an#)Action[sm,ai]为移进,且s=Action[sm,ai],则三元式变为: (s0s1…sms,#X1X2…Xmai,ai+1…an#)(2)Action[sm,ai]={A?β},且s=Goto[sm-|β|,A],则三元式变为: (s0s1…sm-|β|s,#X1X2…Xm-|β|A,aiai+1…an#)(3)Action[sm,ai]=acc,宣布接受,三元式不再变化。(4)Action[sm,ai]=err,报错,三元式不再变化。LR总控程序:第9页,共30页,星期日,2025年,2月5日(1)E?E+T(2)E?T(3)T?T*F(4)T?F(5)F?(E)(6)F?i序号状态符号输入串例:i*i+i的分析过程10#i*i+i#205#i*i+i#303#F*i+i#402#T*i+i#5027#T*i+i#60275#T*i+i#702714#T*F+i#802#T+i#901#E+i#10016#E+i#110165#E+i#120163#E+F#1301613#E+T#1401#E#1501acc#第10页,共30页,星期日,2025年,2月5日4.4.3程序流程开始输入单词所在文件名读取单词序列读取产生式读取LR(1)分析表LR(1)语法分析显示分析结果结束第11页,共30页,星期日,2025年,2月5日4.4.4数据结构///summary///单词类别////summarypublicenumWordType{Operator,//算符IntConst,//常数(无符号整数)Variable,//变量(标识符)Boundary,//界符Error//错误}第12页,共30页,星期日,2025年,2月5日4.4.4.1单词单词序列采用链表存储,每个结点表示一个单词,用如下类表示:publicclassWord{publicWordTypeType{get;set;}publicstringValue{

文档评论(0)

xiaolan118 + 关注
实名认证
文档贡献者

你好,我好,大家好!

版权声明书
用户编号:7140162041000002

1亿VIP精品文档

相关文档