第三章语法分析选编.ppt

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

第三章 语法分析 ; (3) 采用自上而下分析,必须 。 a. 消除左递归 b. 消除右递归 c. 消除回溯 d. 提取公共左因子 (4) 设a、b、c是文法的终结符,且满足优先关系ab和bc,则 。 a. 必有ac b. 必有ca c. 必有ba d. a~c都不一定成立; (5) 在规范归约中,用 来刻画可归约串。 a. 直接短语 b. 句柄 c. 最左素短语 d. 素短语 (6) 若a为终结符,则A→α·aβ为 项目。 a. 归约 b. 移进 c. 接受 d. 待约 (7) 若项目集Ik含有A→α· ,则在状态k时,仅当面临的输入符号a∈FOLLOW(A)时,才采取“A→α· ”动作的一定是 。 a. LALR文法 b. LR(0)文法 c. LR(1)文法 d. SLR(1)文法; (8) 同心集合并有可能产生新的 冲突。 a. 归约 b. “移进”/“移进” c.“移进”/“归约” d. “归约”/“归约” 【解答】 (1) c (2) a (3) c (4) d (5) b (6) b (7) d (8) d 3.2 令文法G[N]为 G[N]: N→D|ND D→0|1|2|3|4|5|6|7|8|9 (1) G[N]的语言L(G[N])是什么? (2) 给出句子0127、34和568的最左推导和最右推导。; 【解答】 (1) G[N]的语言L(G[N])是非负整数。 (2) 最左推导: NNDNDDNDDDDDDD0DDD01DD012D0127 NNDDD3D34 NNDNDDDDD5DD56D568 最右推导: NNDN7ND7N27ND27N127D1270127 NNDN4D434 NNDN8ND8N68D68568; 3.3 已知文法G[S]为S→aSb|Sb|b,试证明文法G[S]为二义文法。 【解答】 由文法G[S]:S→aSb|Sb|b,对句子aabbbb可对应如图3-1所示的两棵语法树。 ;图3-1 句子aabbbb对应的两棵不同语法树 ; 因此,文法G[S]为二义文法(对句子abbb也可画出两棵不同语法树)。 3.4 已知文法G[S]为S→SaS|ε,试证明文法G[S]为二义文法。 【解答】 由文法G[S]:S→SaS|ε,句子aa的语法树如图3-2所示。 ;图3-2 句子aa对应的两棵不同的语法树 ; 由图3-2可知,文法G[S]为二义文法。 3.5 按指定类型,给出语言的文法。 (1) L={aibj|j>i≥0}的上下文无关文法; (2) 字母表Σ={a,b}上的同时只有奇数个a和奇数个b的所有串的集合的正规文法; (3) 由相同个数a和b组成句子的无二义文法。 【解答】 (1) 由L={aibj|j>i≥0}知,所求该语言对应的上下文无关文法首先应有S→aSb型产生式,以保证b的个数不少于a的个数;其次,还需有S→Sb或S→b型的产生式,用以保证b的个数多于a的个数。因此,所求上下文无关文法G[S]为 G[S]:S→aSb|Sb|b; (2) 为了构造字母表Σ={a,b}上同时只有奇数个a和奇数个b的所有串集合的正规式,我们画出如图3-3所示的DFA,即由开始符S出发,经过奇数个a到达状态A,或经过奇数个b到达状态B;而由状态A出发,经过奇数个b到达状态C(终态);同样,由状态B出发经过奇数个a到达终态C。 由图3-3可直接得到正规文法G[S]如下: G[S]:S→aA|bB A→aS|bC|b B→bS|aC|a C→bA|aB|ε;图3-3 习题3.5的DFA; (3) 我们用一个非终结符A代表一个a(即有A→a),用一个非终结符B代表一个b(即有B→b);为了保证a和b的个数相同,则在出现一个a时应相应地出现一个B,出现一个b时则相应出现一个A。假定已推导出bA,如果下一步要推导出连续两个b时,则应有bAbbAA。也即为了保证b和A的个数一致,应有A→bAA;同理有B→aBB。此外,为了保证递归地推出所要求的ab串,应有S→aBS和S→b

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档