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

编译原理文法的判别实验报告.doc

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

编译原理实验报告 实验名称 文法类型的判别 实验时间 2013年11月2日 院系 安徽大学江淮学院 学号 JV114025 姓名 张巧巧 学号 JV114002 姓名 王文悦 学号 JV114045 姓名 冯岚 文法类型的判别 1.实验目的 1)、检测对文法类型的掌握程度 2)、加深对文法的理解 3)、练习用编程解决问题 4)、培养动手能力与创作思维 2.实验原理 1)、0型文法(短语文法) 设G=(Vn,Vt,P,S),如果它的每一个产生式#-是这样一种结构:#属于(终结符和终结符)的闭包且至少含有一个非终结符,属于(终结符和终结符)的闭包。 任何0型语言都是递归可枚举的,递归可枚举集必定是一个0型文法,0型文法的能力相当于图灵机(Turning)。 2)、1型文法(上下文有关文法) 设G=(Vn,Vt,P,S)为一文法,若P中的每一个产生式#-均满足|#|=||,仅仅S-空 除外。 其识别系统:线性界限自动机 3)、2型文法(上下文无关文法) 设G=(Vn,Vt,P,S)为一文法,若P中的每一个产生式#-均满足:#是一个非终结符,属于(终结符和终结符)的闭包。 2型文法其识别系统:不确定的下推自动机 一般定义程序设计语言的文法是上下文无关的。如C语言便是如此。因此,上下文无关文法及相应语言引起了人们较大的兴趣与重视。 4)、3型文法(正规文法) 设G=(Vn,Vt,P,S)为一文法,若P中的每一个产生式都是A-aB或A-a,其中A和B都是非终结符,a属于终结符的闭包。 其识别系统:确定的有穷自动机 可以看出上述4类文法,从0型到3型,产生式的限制越来越强,其后一类都是前一类的子集,而描述语言的功能越来越弱,四类文法之间的关系可表示为:0型1型2型3型 3.实验内容 1)、输入文法的终结符(小写字母或数字)和非终结符(大写字母)以及确定识别符(规定第一输入的非终结符为识别符) 2)、输入文法的产生式的个数以及各个产生式(左部-右部) 3)、判断文法类型 4.实验心得 通过这次实验让我体会到了判别文法的复杂性若发现上一条规则是符合1型文法,则从1型文法开始判断,详见源代码。 2)、结果 输入: S-aSBES-aBE EB-BE aB-ab bB-bb bE-be eE-ee 输入: 2

文档评论(0)

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

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

1亿VIP精品文档

相关文档