[高等教育]第五章 语法分析 自下而上 30.ppt

[高等教育]第五章 语法分析 自下而上 30

对每个a(包括#)∈VT,对应两个符号fa,ga。 把所建立的符号尽可能划分为许多组: 若a b,则fa和gb就在一组; 若a b,c b,则fa和fc同组; 建立一个有向图,其结点是上一步中找出的组。 对于任何a和b,若 a b,画 fa→gb 弧,意味着f(a)g(b); 若 a b,画 gb→fa 弧,意味着f(a)g(b)。 如果上一步结果构成环,则f,g不存在; 否则 f(a)= 从fa组开始的路径和; g (b) = 从gb组开始的路径和。 例 5.8 利用上述分析表,假定输入串为 i * i + i ,描述LR分析器的工作过程。 步骤一:令NFA的初态为I,求其CLOSURE(I),得到初态项目集。即: 求CLOSURE({S’→?S}) 步骤二:对所得项目集I和文法G的每个文法符号X(包括VT和VN) 计算GO(I,X) =CLOSURE(J),得到新的项目集。 其中J={任何形如A → ?X? ?的项目| A → ? ? X ?属于I} 步骤三:重复步骤二,直至没有新的项目集出现。 经过以上步骤构造出的项目集的全体即为LR(0)项目集规范族。 ③利

文档评论(0)

1亿VIP精品文档

相关文档