编译原理5.3.3-SLR分析表的构造.ppt
《编译原理5.3.3-SLR分析表的构造.ppt》由会员分享,可在线阅读,更多相关《编译原理5.3.3-SLR分析表的构造.ppt(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、图图5.7 p1065.7 p106识别文法识别文法活前缀的活前缀的DFADFA从初态出发从初态出发,经读出活经读出活前缀前缀后后,而到达的项而到达的项目集称为目集称为活前缀活前缀的的有效项目集有效项目集I0:SE E aA E bBI5:BcB B cB B dI3:EbB B cB B dI2:EaA A cA A dI1:S E I4:AcA A cA A dI8:Ac AI10:A d I6:EaA I7:EbBI11:B d I9:BcB b E a c c c c d d d d A A B B有效项目有效项目如果存在规范推导如果存在规范推导 则项目则项目A 1 2 对活前缀对活前
2、缀 1 是是有效的有效的。o如果如果 2 ,应该移进,应该移进o如果如果 2 2=,应该用产生式,应该用产生式A 1归约归约*RR 1 2 A SLRLR分析理论的一条基本定理分析理论的一条基本定理:在任何时候,在任何时候,分析栈中的活前缀分析栈中的活前缀X X1 1X X2 2.X Xm m的有效项目集正的有效项目集正是栈顶状态是栈顶状态S Sm m所代表的那个集合。所代表的那个集合。I0:SE E aA E bBI5:BcB B cB B dI3:EbB B cB B dI2:EaA A cA A dI1:S E I4:AcA A cA A dI8:Ac AI10:A d I6:EaA I
3、7:EbBI11:B d I9:BcB b E a c c c c d d d d A A B BG:SEEaA|bBAcA|dBcB|d 项目集项目集I I5 5对活前缀对活前缀bc有效有效考虑如下规范推导考虑如下规范推导(1)S E bB bcB(2)S E bB bcB bccB(3)S E bB bcB bcdI0:SE E aA E bBI5:BcB B cB B dI3:EbB B cB B dI2:EaA A cA A dI1:S E I4:AcA A cA A dI8:Ac AI10:A d I6:EaA I7:EbBI11:B d I9:BcB b E a c c c c d
4、 d d d A A B B同一个项目可能对好同一个项目可能对好几个活前缀都有效几个活前缀都有效G:SEEaA|bBAcA|dBcB|d 同一个活前缀,可能存在若干个项目对它都是有效的,同一个活前缀,可能存在若干个项目对它都是有效的,而且告诉我们应做的事情各不相同,相互冲突。而且告诉我们应做的事情各不相同,相互冲突。这种冲突通过向前多看几个输入符号这种冲突通过向前多看几个输入符号,或许能够获得或许能够获得解决。解决。5.3.3 SLR分析表的构造分析表的构造SLR(1)分析法的引入分析法的引入:LR(0)文法的活前缀识别自动机的每一状态文法的活前缀识别自动机的每一状态(项目集项目集)都不含冲突
5、性的项目都不含冲突性的项目 大多数的程序设计语言的文法不能满足大多数的程序设计语言的文法不能满足LR(0)文法的条件文法的条件 用向前查看一个符号的办法解决冲突用向前查看一个符号的办法解决冲突 例:例:设文法设文法G的的LR(0)项目集规范族中含有如项目集规范族中含有如下一个项目集(状态)下一个项目集(状态)I:I=X b /*移进项目移进项目*/A/*归约项目归约项目*/B/*归约项目归约项目*/移进归约冲突移进归约冲突归约归约冲突归约归约冲突解决冲突策略解决冲突策略(1)若)若a=b,则移进,则移进(2)若)若aFollow(A),则用则用 A 归约归约(3)若)若aFollow(B),则
6、用则用 B归约归约(4)此外,报错)此外,报错用用SLR(1)方法解决冲突方法解决冲突假定假定LR(0)LR(0)规范族的一个项目集规范族的一个项目集I I中含有中含有m m个移进项目个移进项目:A A1 1a a1 11 1,A A2 2a a2 22 2,A Am ma am mm m同时含有同时含有n n个归约项目个归约项目:B B1 11 1,B B2 22 2,B Bn nn n如果集合如果集合a a1 1,a,am m、FOLLOW(BFOLLOW(B1 1)、FOLLOW(BFOLLOW(Bn n)两两不相交,两两不相交,a a是现行输入符号,则是现行输入符号,则:(1 1)若)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 5.3 SLR 分析 构造
限制150内