复习提纲#
目录#
1. 背景#
最近快要考试了,整理了一下编译原理的复习提纲。
2. 引论#
2.1. 编译的5个阶段及其主要任务#
5个阶段
- 词法分析
- 语法分析
- 语义分析与中间代码生成
- 优化
-
目标代码生成
-
词法分析任务:从左至右逐个字符地对源程序进行扫描,产生一个个单词符号
- 语法分析任务:分析一个文法的句子的结构,构造语法树
- 语义分析与中间代码生成任务:生成中间代码
- 优化任务:对中间代码进行加工,用以产生更加高效的目标代码
- 目标代码生成任务:把中间代码变换成机器上的低级语言代码
3. 高级语言及其语法描述#
最左推导:任何一步 都是对 中的最左非终结符进行替换的。
最右推导:任何一步 都是对 中的最右非终结符进行替换的。
3.1. 上下文无关文法#
4. 词法分析#
4.1. 状态转换图#
4.2. DFA#
4.3. NFA#
4.4. 子集法#
4.5. DFA的化简#
5. 语法分析-自上而下分析#
5.1. LR分析法的分析过程#
5.2. LR分析表的构造#
5.3. SLR文法的判断#
6. 语法分析-自下而上分析#
证明句型规范句型(就是求该句型的最右推导)。 画出句型的语法树,求出它所有的直接短语、句柄、素短语和最左素短语。 复习课堂例题、练习。