辽宁大学_编译原理课件part5精选.ppt

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 状态 I 和文法符号 X 的转移函数 go(I,X) = closure([A→αX.β,a]|[A→α.Xβ,a]∈I) A 状态 I 核心 J α . X . β * 计算LR(1)项目集规范族C 即:分析器状态集合 C={I0}∪{I|?J∈C,X∈V∪T,I=go(J,X)}称为G’的LR(1)项目集规范族(算法:P181) begin C:= {closure({ S→.S,#})}; repeat for ?I∈C,? X ∈ V∪T if go(I,X)≠Φ go(I,X)?C then C=C∪go(I,X) until C不变化 end. * 识别活前缀的关于LR(1) 的DFA 识别文法G=(V,T,P,S)的拓广文法G’的所有活前缀的DFA M=(C, V∪T, go, I0, C) I0=CLOSURE({S’ →.S, #} 如果CFG G的LR(1)分

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档