《编译原理与技术》讲义
20
编译程序的组成结构
符号表管理
名称 类型
…
position float
initial float
rate float
2020/10/20
《编译原理与技术》讲义
11
编译程序的组成结构
词法分析阶段 语法分析阶段 语义分析、中间代码生成 优化阶段 目标代码生成
2020/10/20
《编译原理与技术》讲义
12
编译程序的组成结构
后端
back end 与目标机相关
program
scanner parser semantics
2020/10/20
《编译原理与技术》讲义
19
编译程序的组成结构
代码生成 与目标机器有密切联系,如指令选择,寄存 器的使用等。
movf rate, R1 mulf #60.0, R1 movf initial, R2 addf R2, R1 movf R1, position
2020/10/20
目标程序 T (机器语言)
初始数据
2020/10/20
目标程序 T 运行系统 计算机
计算结果
《编译原理与技术》讲义
8
什么是编译程序?
源语言(程序)到目标语言(程序)的映射 转换或者翻译过程
系列转换(翻译)过程
源语言S
T1
…
Tn
中间语言
目标语言T
2020/10/20
《编译原理与技术》讲义
9
解释程序与汇编程序
fact(n) = n * fact( n-1 ) // n! == n * (n-1)!
伪语言描述 fact(n) = if n ≤ 0 then 1 else n*fact(n-1)