文档介绍:编译原理实践及应用
----清华大学出版社
1
教材及主要参考资料
教材:编译原理实践及应用,黄贤英,清华大学出版社
主要参考资料:
编译原理,陈火旺,国防工业出版社
编译原理(原书第2版)(龙书) ,ALFRED etc著,赵建华郑滔等译,机械工业出版社,
程序设计语言编译方法,肖军模,大连理工大学出版社
编译原理,张素琴,吕映芝,清华大学出版社
更多教材及参考资料参见编译原理精品课程网站。
2
C语言程序
void main( )
{ int x,y,z;
x=3;
y=2;
z=x+y;
}
内存地址
内存内容
单元名字
……
……
……
200H
3
x:局部变量
201H
2
y:局部变量
202H
5
z:局部变量
……
……
汇编语言程序
……
mov ax,3
mov x,ax
mov ax,2
mov y,ax
mov ax,x
mov bx,y
add ax,bx
mov z,ax
......
300
302
304
306
308
……
序言
3
引论
第一章
4
本章要求
主要内容:各种翻译程序的概念,编译过程和阶段划分,编译程序的组成和结构,编译程序的构造方法
重点掌握:编译程序工作的基本过程及其各阶段的基本任务,编译程序总框。
5
程序设计语言与翻译程序
机器语言(machine language)
C7 06 0000 0002
汇编语言(assembler language)
MOV X , 2
高级语言(high-level language)
X = 2
为什么要使用编译程序?
6
机器语言(machine language)
C7 06 0000 0002
汇编语言(assembler language)
MOV X , 2
高级语言(high-level language)
X = 2
为什么要使用编译程序?
7
计算机中的语言层次和转换关系
8
高
级
语
言
语言处理程序
操作系统
汇编语言
编译程序所处的层次
计算机硬件
C
编译程序
C
语
言
Basic解释程序
Basic语言
Fortran编译程序
Fortran语言
.
.
.
.
.
.
.
.
.
.
.
.
9
什么叫编译程序
翻译程序:能够将某种语言写的程序转换成另一种语言的程序,而且后者与前者在逻辑上是等价的。
编译程序:将高级程序设计语言程序翻译成逻辑上等价的低级语言(汇编语言,机器语言)程序的翻译程序。
解释程序:将高级程序设计语言写的源程序作为输入,边解释边执行源程序本身,而不产生目标程序的翻译程序。
10