编译原理lr1算法源代码.pdfVIP

  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文档。上传文档
查看更多
编译原理 LR 1 算法源代码 一 . 实验目的 1( 掌握 LR(1) 分析法的基本原理 2( 掌握 LR(1) 分析表的构造方法 3( 掌握 LR(1) 驱动程序的构造方法 二 . 实验内容及要求 构造 LR(1) 分析程序,利用它进行语法分析,判断给出的符号串是否为该文法 识别的句子,了解 LR(K)分析方法是严格的从左向右扫描,和自底向上的语法分析 方法。 根据某一文法编制调试 LR(1) 分析程序,以便对任意输入的符号串进行分析。 本次实验的目的主要是加深对 LR(1) 分析法的理解。 程序输入 / 输出示例 : 1) 分析法对任意输入的符号串进行分析 : 对下列文法,用 LR( (1)E-E+T (2)E-E —T (3)T-T*F (4)T-T/F (5)F-(E) (6)F-i 输出的格式如下 : (1)LR(1) 分析程序,编制人 : 姓名,学号,班级 (2) 输入一以 #结束的符号串 ( 包括 +—*/()i#): 在此位置输入符号串 (3) 输出过 程如下 : 步骤 状态栈 符号栈 动作 剩余输入串 1 0 # i+i*i# 移进 (4) 输入符号串为非法符号串 ( 或者为合法符号串 ) 备注 :(1) 在“所用产生式”一列中如果对应有推导则写出所用产生式 ; 如果为 匹配终结符则写明匹配的终结符 ; 如分析异常出错则写为“分析出错” ; 若成功结束 则写为“分析成功”。 (2) 在此位置输入符号串为用户自行输入的符号串。 注意 :1. 表达式中允许使用运算符 (+-*/) 、分割符 ( 括号 ) 、字符 i ,结束符 #; 2. 如果遇到错误的表达式,应输出错误提示信息 ( 该信息越详细越好 ); 3. 对学有余力 的同学,测试用的表达式事先放在文本文件中,一行存放一个表达式,同时以分号 分割。同时将预期的输出结果写在另一个文本文件中,以便和输出进行对照 ; 4( 可 采用的其它的文法。 三 . 实验过程 1、使用 LR(1) 的优点 : (1)LR 分析器能够构造来识别所有能用上下文无关文法写的程序设计语言的结 构。 (2)LR 分析方法是已知的最一般的无回溯移进 - 归约方法,它能够和其他移进 - 归约方法一样有效地实现。 (3)LR 方法能分析的文法类是预测分析法能分析的文法类的真超集。 (4)LR 分析器能及时察觉语法错误 , 快到自左向右扫描输入的最大可能。 为了使一个文法是 LR 的,只要保证当句柄出现在栈顶时,自左向右扫描的移 进- 归约分析器能够及时识别它便足够了。当句柄出现在栈顶时, LR分析器必须要 扫描整个栈就可以知道这一点,栈顶的状态符号包含了所需要的一切信息。如果仅 知道栈内的文法符号就能确定栈顶是什么句柄。 LR分析表的转移函数本质上就是 这样的有限自动机。不过,这个有限自动机不需要根据每步动作读栈,因为,如果 这个识别句柄的有限自动机自底向上读栈中的文法符号的话,它达到的状态正是这 时栈顶的状态符号所表示的状态,所以, LR分析器可以从栈顶的状态确定它需要 从栈中了解的一切。 2、LR分析器由三个部分组成 : (1) 总控程序,也可以称为驱动程序。对所有的 LR分析器总控程序都是相同 的。 (2) 分析表或分析函数,不同的文法分析表将不同,同一个文法采用

文档评论(0)

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

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

1亿VIP精品文档

相关文档