网站大量收购独家精品文档,联系QQ:2885784924

编译原理实验报告——实验三 语法分析分析器.pdf

编译原理实验报告——实验三 语法分析分析器.pdf

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理实验报告——实验三 语法分析分析器

编译原理实验报告 实验名称: 编写语法分析分析器 实验类型: 验证型实验 指导教师: 庄 燕 滨 专业班级: 10 软件卓越 姓 名: 黄 子 轩 学 号: 电子邮件: 139.com 实验地点: 秋白楼B705 实验成绩: 日期:2013 年 6 月 5 日 1 一、实验目的 通过设计、编制、调试一个典型的语法分析程序,实现对词法分析程序所提供的单词 序列进行语法检查和结构分析,进一步掌握常用的语法分析方法。 1、选择最有代表性的语法分析方法,如 LL(1) 语法分析程序、算符优先分析程序和 LR 分析分析程序,并至少完成两个题目。 2 、选择对各种常见程序语言都用的语法结构,如赋值语句(尤指表达式)作为分析对 象,并且与所选语法分析方法要比较贴切。 二、实验过程 题目一、编写LL(1)语法分析分析器。 要求: (a ) 根据LL (1)分析法总控制流程图,编写一个分析对象的语法分析程序。可根据自 己的能力选择以下三项(由易到难)之一作为分析算法中的输入: Ⅰ:直接输入根据已知文法人工构造的分析表M 。 Ⅱ:输入已知文法的集合FIRST (x )和FOLLOW (U ),由程序自动生成该文法的分析表M 。 Ⅲ:输入已知文法,由程序自动生成该文法分析表M 。 (b )程序具有通用性,即所编制的LL (1)语法分析程序能够适用于不同文法以及各种 输 入单词串,并能判断该文法是否为算符文法和算符优先文法。 (c )有运行实例。对于输入的一个文法和一个单词串,所编制的语法分析程序应能正确地 判断,此单词串是否为该文法的句子,并要求输出分析过程。 题目二、编写算符优先分析器。 要求: (a)根据算符优先分析算法,编写一个分析对象的语法分析程序。读者可根据自己的能力 选择以下三项(由易到难)之一作为分析算法中的输入: Ⅰ:通过构造算符优先关系表,设计编制并调试一个算法优先分析程序 Ⅱ:输入FIRSTVT,LASTVT 集合,由程序自动生成该文法的算符优先关系矩阵。 Ⅲ:输入已知文法,由程序自动生成该文法的算符优先关系矩阵。 (b)程序具有通用性,即所编制的语法分析程序能够使用于不同文法以及各种输入单词串, 并能判断该文法是否为算符文法和算符优先文法。 (c)有运行实例。对于输入的一个文法和一个单词串,所编制的语法分析程序应能正确地 判断,此单词串是否为该文法的句子,并要求输出分析过程。 三、实验结果 (一)LL(1) : 实验结果: 2 (二)算符优先分析: 测试数据:E-E+T|T T-T*F|F F-(E)|i 实验结果:(输入串为i+i*i+i) 3 四、讨论与分析 4 确定的自上而下语法分析方法-预测分析法(LL(1)方法): LL (1)文法的判定: 对于文法G 的每一个非终结符U 的产生式:U→α1|α2 |…|αn 。 如果文法G 是一个LL(1)文法,则有SELECT(U→αi) ∩SELECT(U→αj )=Ф (i≠j ,i,j=1 ,2,…,

文档评论(0)

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

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

1亿VIP精品文档

相关文档