编译原理笔记

4-3  LL(1)文法

 

 

 

总结:FOLLOW集的定义为 产生式推出空时,后面可以接的终结符的集合[依赖于后一个非终结符的FIRST集](或为最右符号时,加上$)。FIRST集为产生式能推出的串首终结符的集合(或加上空)。两者都表示可以选择该产生式的输入字符集。故产生式的SELECT集可由FIRST集和FOLLOW集表示。

 

 

FIRST集的求法:

 

 

FOLLOW集的求法:

 

SELECT集的求法:

 例子:

 

(2)(3)、(5)(6)产生式的左部相同,但SELECT集不相交,故为LL(1)文法

根据SELECt集构造预测分析表:

第五讲语法分析_2  

4-6非递归的预测分析法(表驱动的预测分析)

 例子:(输出为最左推导)

 

 

第五讲 语法分析_2

4-7预测分析中的错误

 

例子:

第六讲

4-8 自底向上分析

移入-归约分析

 

句柄:当前句型的最左 直接短语

(直接短语)

 

(句柄:<IDS> ,  iB)

(第六讲4-9)识别句柄->LR分析法:

LR分析表:

(第六讲,4-10) LR(0)分析

 

 

存在的问题:

(第七讲4-12)SLR分析(SLR(1)分析)

 

 

(第七讲 4-13)LR(1)分析法

 

 

(第七讲 4-14)LALR分析法

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2019-03-20 20:37  cellphone7  阅读(240)  评论(0编辑  收藏  举报