编译原第三章答案.doc

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

第3章 文法和语言 第1题 文法G=({A,B,S},{a,b,c},P,S)其中P为: S→Ac|aB A→ab B→bc 写出L(G[S])的全部元素。 答案: L(G[S])={abc} 第2题 文法G[N]为: N→D|ND D→0|1|2|3|4|5|6|7|8|9 G[N]的语言是什么? 答案: G[N]的语言是V+。V={0,1,2,3,4,5,6,7,8,9} N=ND=NDD.... =NDDDD...D=D......D 或者:允许0开头的非负整数? 第3题 为只包含数字、加号和减号的表达式,例如9-2+5,3-1,7等构造一个文法。 答案: G[S]: S-S+D|S-D|D D-0|1|2|3|4|5|6|7|8|9 第4题 已知文法G[Z]: Z→aZb|ab 写出L(G[Z])的全部元素。 答案: Z=aZb=aaZbb=aaa..Z...bbb= aaa..ab...bbb L(G[Z])={anbn|n=1} 第5题 写一文法,使其语言是偶正整数的集合。 要求: (1) 允许0打头; (2)不允许0打头。 答案: (1)允许0开头的偶正整数集合的文法 E→NT|D T→NT|D N→D|1|3|5|7|9 D→0|2|4|6|8 (2)不允许0开头的偶正整数集合的文法 E→NT|D T→FT|G N→D|1|3|5|7|9 D→2|4|6|8 F→N|0 G→D|0 第6题 已知文法G: 表达式::=项|表达式+项 项::=因子|项*因子 因子::=(表达式)|i 试给出下述表达式的推导及语法树。 (5)i+(i+i) (6)i+i*i 第8题 文法G[S]为: S→Ac|aB A→ab B→bc 该文法是否为二义的?为什么? 答案: 对于串abc (1)S=Ac=abc (2)S=aB=abc 即存在两不同的最右推导。所以,该文法是二义的。 或者: 第10题 文法S→S(S)S|ε (1) 生成的语言是什么? (2) 该文法是二义的吗?说明理由。 答案: (1) 嵌套的括号 (2) 是二义的,因为对于()()可以构造两棵不同的语法树。 第11题 令文法G[E]为: E→T|E+T|E-T T→F|T*F|T/F F→(E)|i 证明E+T*F是它的一个句型,指出这个句型的所有短语、直接短语和句柄。 第14题 给出生成下述语言的上下文无关文法: (1){ anbnambm| n,m=0} (2){ 1n0m 1m0n| n,m=0} (3){WaWr|W属于{0|a}*,Wr表示W的逆} 答案: (1) S→AA A→aAb|ε (2) S→1S0|A A→0A1|ε (3) S→0S0|1S1|ε 第16题 给出生成下述语言的三型文法: (1){an|n =0 } (2) { anbm|n,m=1 } (3){anbmck|n,m,k=0 } 答案: (1) S→aS|ε (2) S→aA A→aA|B B→bB|b (3) A→aA|B B→bB|C C→cC|ε 第18题 解释下列术语和概念: (1) 字母表 (2) 串、字和句子 (3) 语言、语法和语义 答案: 字母表:是一个非空有穷集合。 (3)语言:它是由句子组成的集合,是由一组记号所构成的集合。程序设计的语言就是所 有该语言的程序的全体。语言可以看成在一个基本符号集上定义的,按一定规则构成的一切基本符号串组成的集合。 语法:表示构成语言句子的各个记号之间的组合规律。程序的结构或形式。 语义:表示按照各种表示方法所表示的各个记号的特定含义。语言所代表的含义。 附加题 问题1: 给出下述文法所对应的正规式: S→0A|1B A→1S|1 B→0S|0 答案: R = (01 | 10) ( 01 | 10 )* 问题2: 已知文法G[A],写出它定义的语言描述 G[A]: A → 0B|1C B → 1|1A|0BB C → 0|0A|1CC 答案: G[A]定义的语言由0、1符号串组成,串中0和1的个数相同. 问题3: 给出语言描述,构造文法. 构造一文法,其定义的语言是由算符+, *, (,)和运算对象a构成的算术表达式的集合. 答案一: G[E] E→E+T|T T→T* F|F F→(E)|a 答案二: G[E] E→E+E|E* E|(E)|a 问题4: 已知文法G[S]: S→dAB A→aA|a B→ε|bB 相应的正规式是什么?G[S]能否改写成为等价的正规文法? 答案: 正规式是daa*b*; 相应的正规

文档评论(0)

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

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

1亿VIP精品文档

相关文档