编译原理基础——习题与上机题解答 刘坚 第1-5章 第3章新.pptVIP

编译原理基础——习题与上机题解答 刘坚 第1-5章 第3章新.ppt

  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文档。上传文档
查看更多
  3.1 仿照最左推导和左句型的定义,定义最右推导和右句型。   解:   最右推导:在推导过程中,若每次直接推导均替换句型中最右边的非终结符,称为最右推导。   右句型:由最右推导产生的句型被称为右句型。   3.2 对所给文法:S→(L)|a L→L, S|S   (1) 指出文法的开始符号、终结符、非终结符;   (2) 为下述句子建立最左推导和最右推导,并给出它们最终的分析树;   ① (a, a) ② (a, (a, a)) ③ (a, ((a, a), (a, a)))   (3) 用自然语言描述该文法所产生的语言。   解:   (1) 开始符号:S 终结符:( ) , a 非终结符:S L   (2) (a, a) 的最左推导:S=(L)=(L, S)=(S, S)=(a, S)=(a, a)    (a, a) 的最右推导:S=(L)=(L, S)=(L, a)=(S, a)=(a, a)    (a, (a, a)) 的最左推导:S=(L)= (L, S)=(S, S)=(a, S)=(a, (L))   ?=(a, (L, S))=(a, (S, S))=(a, (a, S))=(a, (a, a))    (a, (a, a)) 的最右推导:S=(L)= (L, S)=(L, (L))=(L, (L, S))=(L, (L, a))   ?=(L, (S, a))=(L, (a, a))=(S, (a, a))=(a, (a, a))    (a, ((a, a), (a, a)))的最左推导:   S=(L)=(L, S)=(S, S)=(a, S)=(a, (L))=(a, (L, S))=(a, (S, S))   =(a, ((L), S))=(a, ((L, S), S))=(a, ((S, S), S))=(a, ((a, S), S))   =(a, ((a, a), S))=(a, ((a, a), (L)))=(a, ((a, a), (L, S)))   =(a, ((a, a), (S, S)))=(a, ((a, a), (a, S)))=(a, ((a, a), (a, a)))    (a, ((a, a), (a, a)))的最右推导:   S=(L)=(L, S)=(L, (L))=(L, (L, S))=(L, (L, (L)))=(L, (L, (L, S)))   =(L, (L, (L, a)))=(L, (L, (S, a)))=(L, (L, (a, a)))=(L, (S, (a, a)))   =(L, ((L), (a, a)))=(L, ((L, S), (a, a)))=(L, ((L, a), (a, a)))   =(L, ((S, a), (a, a)))=(L, ((a, a), (a, a)))=(S, ((a, a), (a, a)))   =(a, ((a, a), (a, a)))   它们最终的分析树如题3.2图所示。    题3.2图   (a) ?(a, a)的分析树;(b) ?a, (a, a)的分析树; (c) ?(a, ((a, a), (a, a)))的分析树   (3) 该文法产生的语言是n元组,其中任何一元可为a或n元组(n=1, 2, …)。   3.3 对所给文法:N→D|ND D→0|1|2|3|4|5|6|7|8|9   (1) 给出句子0127、34和568的最左推导和最右推导;   (2) 用自然语言描述该文法所产生的语言。   解:   (1) 0127的最左推导:N=ND=NDD=NDDD=DDDD=0DDD=01DD=012D   ?=0127   ??0127的最右推导: N=ND=N7=ND7=N27=ND27=N127=D127=0127   ??34的最左推导:N=ND=DD=3D=34   ??34的最右推导:N=ND=N4=D4=34   ??568的最左推导:N=ND=NDD=DDD=5DD=56D=568   ??568的最右推导:N=ND=N8=ND8=N68=D68=568   (2) 该文法所产生的语言:由0~9构成的长度≥1的数字串。   3.4 对所给文法G:S→aSbS|bSaS|ε   (1) 通过为句子abab建立两个最左推导来说明G是二义文法,给出两个最左推导的分析树;   (2) 为句子abab建立最右推导并给出分析树;   (3) 另外举出两个G产生的句子,并用自然语言描述该文法所产生的语言(句子的特点)。   解:   (1) 句子abab的   最左推导一:S=aSbS=abS=abaS

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档