针对循环优化:强度削弱 删除归纳变量 代码外提
终结符具有综合属性
词法分析阶段不能识别四元式
词法分析器的输入是源程序
DFA构成:有穷字母表 终止状态集合 有限状态集合
编译过程包括词法分析 语法分析 语义分析和中间代码产生 中间代码优化 目标代码生成 符号表 和出错处理七个阶段
符号表和出错处理贯穿整个编译过程
词法分析:lex和flex 语法分析:yacc
采用中间代码有什么好处?
方便进行与及机器无关的代码优化
改变目标机更容易
使编译程序的逻辑结构更明确
三地址代码的形式:三元式 四元式 和间接三元式
三元式:占用空间小,调整顺序或优化困难
四元式:优化方便,占用空间大
间接三元式:占用空间相对较小,调整顺序或优化时相对容易
第一章
翻译程序:把某一种语言程序(称为源语言程序)等价地转换成另一种语言程序(称为目标语言程序)的程序
编译程序:把某一种高级语言程序等价地转换成另一种低级语言程序(如汇编语言或机器语言程序)的程序<