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

§7.4 LR(1)分析 三、LR(1)分析方法 1. LR(1)项目集族的构造 以[S′→?S,#]属于初始项目集,把#号作为向前有哪些信誉好的足球投注网站符,表示活前缀为γ(若γ是有关S产生式的某一右部)要归约成S时,必须面临输入符为#号才行。因此对初始项目[S′→?S,# ]求闭包后再用转换函数逐步求出整个文法的LR(1)项目集族。 主要思想 §7.4 LR(1)分析 三、LR(1)分析方法 1. LR(1)项目集族的构造 构造LR(1)项目集的闭包函数 步骤 I 的任何项目都属于CLOSURE(I) 若有项目[A→α?Bβ,a ]属于CLOSURE(I), B→γ是文法中的产生式,β∈V*,b∈FIRST(βa), 则[B→?γ,b]也属于CLOSURE(I)中。 c) 重复b)直到CLOSURE(I)不再增大为止。 举 例 若文法G′为: (0) S′→S (1) S→BB (2) B→aB (3) B→b I0: S’??S, # S??BB, # B??aB, a/b B??b, a/b 构造LR(1)项目集的初态I0 I 的任何项目都属于CLOSURE(I) 若有项目[A→α?Bβ,a ]属于CLOSURE(I), B→γ是文法中的产生式,β∈V*,b∈FIRST(βa), 则[B→?γ,b]也属于CLOSURE(I)中。 c) 重复b)直到CLOSURE(I)不再增大为止。 §7.4 LR(1)分析 三、LR(1)分析方法 1. LR(1)项目集族的构造 转换函数的构造 步骤 LR(1)转换函数的构造与LR(0)的相似,GO(I,X)=CLOSURE(J)   其中I是LR(1)的项目集,X是文法符号:   J={任何形如[A→αX?β,a]的项目 | [A→α?Xβ,a]∈I} 举 例 若文法G′为: (0) S′→S (2) B→aB    (1) S→BB (3) B→b I0: S’??S, # S??BB, # B??aB, a/b B??b, a/b S I1:S’?S?, # B I2:S?B?B, # B??aB, # B??b, # b I4:B?b?, a/b a I3:B?a?B, a/b B??aB, a/b B??b, a/b 构造LR(1)项目集初态I0的转换函数 举 例 若文法G′为: (0) S′→S (2) B→aB    (1) S→BB (3) B→b 构造LR(1)分析表 I0: S’??S, # S??BB, # B??aB, a/b B??b, a/b S I1:S’?S?, # B I2:S?B?B, # B??aB, # B??b, # b I4:B?b?, a/b a I3:B?a?B, a/b B??aB, a/b B??b, a/b b B I5:S?BB?, # a I6:B?a?B, # B??aB, # B??b, # b I7:B? b?, # b a B I8:B? aB?, a/b a B I9:B? aB?, # ①LR(1)项目集族和转换函数 §7.4 LR(1)分析 三、LR(1)分析方法 2. LR(1)分析表的构造 构造步骤 (2)若项目A→α?属于Ik,则对任何终结符a 和‘#’号 置ACTION[k,a]和ACTION[k,#]为“rj”,j为在 文法G′中某产生式A→α的序号。 LR(1)分析表 (2)若项目A→α?属于Ik,则对任何终结符 a∈Follow(A) ,置ACTION[k,a] 为“rj”,j为在文 法G′中某产生式A→α的序号。 (2) 若项目[A→α?,a]属于Ik,则对任意终结符a置 ACTION[k,a]= rj 。 SLR(1) LR(1) LR(0) 举 例 若文法G′为: (0) S′→S (2) B→aB    (1) S→BB (3) B→b 构造LR(1)分析表 ②构造LR(1)分析表 状 态 ACTION GOTO a b # S B 0 s3 s4 1 2 1 acc 2 s6 s7 5 3 s3 s4 8 4 r3 r3 5 r1 6 s6 s7 9 7 r3 8 r2 r2 9 r2 a I0: S’??S, # S??BB, # B??aB, a/b B??b, a/b S I1:S’?S?, #

文档评论(0)

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

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

1亿VIP精品文档

相关文档