Part4自顶向下的语法要点.pptVIP

  • 1
  • 0
  • 约6.79千字
  • 约 55页
  • 2017-05-12 发布于湖北
  • 举报
LL(1)分析条件 通过上面的讨论,我们可以找出满足构造不带回溯的自顶向下分析的文法条件。 文法不含左递归 对于文法中每一个非终结符A的各个产生式的候选首符集两两不相交。即,若A→α1 |α2 | … |αn,则FIRST(αi)∩FIRST(αj)=Φ (i≠j) 对文法中的每个非终结符A,若它存在某个候选首符集包含ε,则,FIRST(A)∩FOLLOW(A)=Φ 如果一个文法G满足以上条件,则称该文法G为LL(1)文法。 这里LL(1)中的第一个L表示从左到右扫描输入串,第二个L表示最左推导,1表示分析时每一步只需向前查看一个符号。 LL(1)分析条件 对于一个LL(1)文法,可以对其输入串进行有效的无回溯的自顶向下分析。 假设要用非终结符A进行匹配,面临的输入符号为a,A的所有产生式为A→α1 |α2 | … |αn 若a∈FIRST(αi),则指派αi去执行匹配任务。 若a不属于任何一个候选首字符集,则: 若ε属于某个FIRST(αi),且a∈FOLLOW(A),则让A与ε自动匹配; 否则,a的出现是一种语法错误。 根据LL(1)文法的条件,每一步这样的工作都是确信无疑的 LL(1)分析法 预测分析程序工作过程 实现LL(1)分析的一种有效方法是使用一张分析表和一个栈进行联合控制。下面要介绍的预测分析程序就是属于这种类型的LL(1)分析器。 预测分析表 预测分析

文档评论(0)

1亿VIP精品文档

相关文档