2.2 LR分析引擎
LR分析引擎是一种有限自动机。根据该自动机,可以通过当前状态和下一个字符,得到下一步的动作。LR分析引擎超前查看一个字符,做出判断。
2.2.1 LR分析引擎的算法
详见书中介绍
2.3 抽象语法树
抽象语法树起了在语法分析和编译器之间建立清晰接口的作用。(a),它解决所有语法分析的问题;(b),它给下一步语义分析做了很好的描述。
例如:
{a := 5; a+1;}
上句的抽象语法树为
A_seqExp(
A_expList(
A_assignExp("a", 5);
A_opExp("a", 1, addOp);
)
)