编译原理-第4章
③ 取这些项目集作为各状态,并画出识别文法G′的有穷自动机 ④ 用SLR方法解决“移进---归约”冲突。 在十二个项目集中,I1、I2和I9都含有“移进---归约”冲突,其解决办法是: ● 对于项目集I1={S′∷=E·,E ∷=E·+T},由于集合FOLLOW(S′)={#}与集合{+}不相交,所以当状态为1时,面临着输入符号为+时便移进,而面临着输入符号为#时,则按规则S′∷=E归约。 ● 对于项目集I2={E∷=T·,T∷=T·*F},由于集合FOLLOW(E)={+,),#}与集合{*}不相交,因此状态2面临输入符号为*时移进,而面临输入符号为+或)或#时,按规则E∷=T归约。 ● 对于项目集I9={E ∷=E+T·,T ∷=T·*F},同样由于FOLLOW(E)={+,),#}与集合{*}不相交,因此状态9面临着输入符号为*时移进,面临着输入符号为+或)或# 时,按规则E∷=E+T归约。 ⑤ 根据SLR(1)分析表构造方法构造SLR(1)分析表. 对于冲突项目的状态,如状态1,2,9,按用SLR方法解决构造 SLR(1)分析表. 对于其他状态项目集,只有一个归约项目,也是按照修改后构造SLR(1)分析表方法进行构造 §4.3 自底向上语法分析 四、LR分析法 3、LR(0)分析表的构造 7) LR(0)
原创力文档

文档评论(0)