本节重点:五个步骤七个部分
主要有五个步骤和另外两个贯穿全过程的部分。一共七部分
1 词法分析
将源码识别为一个一个的词语
单词分类:四大类或五大类
关键字-保留字 while、if等
分界符
运算符
标识符
常量
输出的单词表示为二元组(种类,值)
通过正规表达式与有限自动机进行形式化表达
2 语法分析
根据语法规则,将单词串分析为语法元素
自上而下
LL(1)预测
自下而上
算符优先分析
LR分析
3 语义分析+中间代码生成
调用子程序
构造语法树
推导的逆过程称为规约。规约就是选择一个文法规则
4 代码优化
优化循环
优化重复表达式
5 代码生成
符号表管理
一直在造和查,最重要。
常用