第一章引论 1.1编译程序和解释程序 1.2编译过程和编译程序的结构(重点) 1.2.1编译过程概述 1.2.2编译程序结构 1.2.3编译阶段的组合 1.3编译程序在其他软件中的应用 1.4程序设计语言范型 1.5编译程序实现途径 本章练习 课程目录 悲 作业
1 第一章 引论 1.1 编译程序和解释程序 1.2 编译过程和编译程序的结构(重点) 1.2.1 编译过程概述 1.2.2 编译程序结构 1.2.3 编译阶段的组合 1.3 编译程序在其他软件中的应用 1.4 程序设计语言范型 1.5 编译程序实现途径 本章练习 作业 课程目录
1.1什么是编译程序D1 编译程序的必要性 计算机是当代科学发展的重要工具,已渗入到各 个行业乃至家庭生活中 要让计算机为人类工作服务,就必须建立人与计 算机之间的信息交流 但计算机只认识由“0”和“1”构成的机器语言,每 台机器都有自己独特的指令系统,即机器语言 最早的程序就是用8进制和16进制码的机器语言书 写的
2 1.1 什么是编译程序 p1 编译程序的必要性 计算机是当代科学发展的重要工具,已渗入到各 个行业乃至家庭生活中 要让计算机为人类工作服务,就必须建立人与计 算机之间的信息交流 但计算机只认识由“0”和“1”构成的机器语言,每 台机器都有自己独特的指令系统,即机器语言 最早的程序就是用8进制和16进制码的机器语言书 写的
编译程序的必要性(续) 用机器语言书写程序,不仅不易学,而且可调 试性、可读性、可维护性和结构性都很差,开 发时间也很长 因此,先后出现了用于源程序设计的语言: 基于助记符的汇编语言 接近人类自然语言的高级程序设计语言 编译程序最初的定义是把一种高级语言设计的 源程序(面向人的)翻译成另一种等价的低级程 序设计语言(面向硬件的)即机器语言或汇编语 言 悲 D
3 编译程序的必要性(续) 用机器语言书写程序,不仅不易学,而且可调 试性、可读性、可维护性和结构性都很差,开 发时间也很长 因此,先后出现了用于源程序设计的语言: 基于助记符的汇编语言 接近人类自然语言的高级程序设计语言 编译程序最初的定义是把一种高级语言设计的 源程序(面向人的)翻译成另一种等价的低级程 序设计语言(面向硬件的)即机器语言或汇编语 言
程序设计语言源程序的执行方式 程序设计语言源程序的执行基本有两种方式 翻译使用翻译程序,将源程序翻译成为低级语 言目标程序,然后执行目标程序 解释 使用解释程序,对源程序逐个语句边解释 边执行 可比喻为 译文一目标程序 翻译一笔译(产生译文,可进行优化,一次 翻译过后,多次使用) 解释一口译(不产生译文,交互方便,节省 空间,对重复部分要反复解释,效率低)
4 程序设计语言源程序的执行方式 程序设计语言源程序的执行基本有两种方式 翻译 使用翻译程序,将源程序翻译成为低级语 言目标程序,然后执行目标程序 解释 使用解释程序,对源程序逐个语句边解释 边执行 可比喻为 译文—目标程序 翻译—笔译 (产生译文,可进行优化,一次 翻译过后,多次使用) 解释—口译 (不产生译文,交互方便,节省 空间,对重复部分要反复解释,效率低)
翻译程序和解释程序图解 源程序 翻译程序 目标程序 (源语言) (目标语言) 源程序 解释程序 共同点:都需 (源语言) 进行词法、语 法和语义分析 输入 输出 悲
5 翻译程序和解释程序图解 源程序 (源语言) 翻译程序 目标程序 (目标语言) 源程序 (源语言) 解释程序 输入 输出 共同点:都需 进行词法、语 法和语义分析