第一章引论 1.1编译程序和解释程序(重点) 1.2编译过程和编译程序的结构(重点) 1.2.1编译过程概述 1.2.2编译程序结构 1.2.3编译阶段的组合 1.3编译程序在其他软件中的应用(自学略) 1.4PL0语言编译系统(自学略) 自增:编译程序实现途径((自学略) 本章练习 作业 课程目录
1 第一章 引论 1.1 编译程序和解释程序(重点) 1.2 编译过程和编译程序的结构(重点) 1.2.1 编译过程概述 1.2.2 编译程序结构 1.2.3 编译阶段的组合 1.3编译程序在其他软件中的应用(自学略) 1.4PL/0语言编译系统(自学略) 自增: 编译程序实现途径(自学略) 本章练习 作业 课程目录
1.1什么是编译程序p1 编译程序的必要性 机器语言:计算机只认识由0和1构成的机器语言, 每台机器自己独特的指令系统即机器语言。 汇编语言 高级语言 ???? 编译程序概念 编译程序最初的定义是把一种高级语言设计的源 程序(面向人的)翻译成另一种等价的低级程序设 计语言(面向硬件的)即机器语言或汇编语言
2 1.1 什么是编译程序 p1 编译程序的必要性 机器语言:计算机只认识由0和1构成的机器语言, 每台机器自己独特的指令系统即机器语言。 汇编语言 高级语言 ???? 编译程序概念 编译程序最初的定义是把一种高级语言设计的源 程序(面向人的)翻译成另一种等价的低级程序设 计语言(面向硬件的)即机器语言或汇编语言
程序设计语言源程序的执行方式 程序设计语言源程序的执行基本有两种方式 翻译使用翻译程序,将源程序翻译成为低级语 言目标程序,然后执行目标程序 解释 使用解释程序,对源程序逐个语句边解释 边执行 可比喻为 译文一目标程序 翻译一笔译(产生译文,可进行优化,一次 翻译过后,多次使用) 解释一口译(不产生译文,交互方便,节省 空间,对重复部分要反复解释,效率低)
3 程序设计语言源程序的执行方式 程序设计语言源程序的执行基本有两种方式 翻译 使用翻译程序,将源程序翻译成为低级语 言目标程序,然后执行目标程序 解释 使用解释程序,对源程序逐个语句边解释 边执行 可比喻为 译文—目标程序 翻译—笔译 (产生译文,可进行优化,一次 翻译过后,多次使用) 解释—口译 (不产生译文,交互方便,节省 空间,对重复部分要反复解释,效率低)
翻译程序和解释程序图解 源程序 翻译程序 且标程序 (源语言) (且标语言) 共同点:都需 源程序 解释程序 进行词法、语 (源语言) 法和语义分析 区别:是否生 输入 输出 成目标程序 悲
4 翻译程序和解释程序图解 源程序 (源语言) 翻译程序 目标程序 (目标语言) 源程序 (源语言) 解释程序 输入 输出 共同点:都需 进行词法、语 法和语义分析 区别:是否生 成目标程序
程序设计语言源程序的执行方式 例假设有源程序:read(区);write("x=",x); read☒: 翻译程序 目标程序 write("x=",x上 目标程序 X=3 read☒: 解释程序 X=3 write("x=",x); 3
5 程序设计语言源程序的执行方式 例 假设有源程序:read(x); write("x=", x); read(x); write("x=", x); 目标程序 目标程序 3 X=3 read(x); write("x=", x); 翻译程序 解释程序 3 X=3