第五节编译概述 不同语言之间的翻译 1.翻译程序:等价地变换 2.编译程序:高级语言→低级语言 3.汇编程序:汇编语言→机器语言
第五节 编译概述 一. 不同语言之间的翻译 1. 翻译程序: 等价地变换 2. 编译程序: 高级语言低级语言 3. 汇编程序: 汇编语言机器语言
二.编译执行和解释执行 1.编译执行 初始数据 源程序编译目标程序运行一计算结果 编译汇编语言程房汇编程序目标程序 2 2.解释执行一边翻译一边解释执行
二. 编译执行和解释执行 1. 编译执行 源程序 目标程序 计算结果 汇编语言程序 目标程序 2. 解释执行:一边翻译一边解释执行 编译 编译 运行 汇编程序 初始数据
三.编译程序的组成 词法分析:输入字符串,根据词法规则 识别出单词符号。 2.语法分析:根据语法规则,将单词符号 构成各类语法单位,并进行语法检查
三. 编译程序的组成 1. 词法分析: 输入字符串,根据词法规则 识别出单词符号。 2. 语法分析: 根据语法规则,将单词符号 构成各类语法单位,并进行语法检查
3.语义分析与代码生成 根据语义规则进行初步编译。 4.优化:对中间代码进行等价变换以 使代码更有效。 5.目标代码生成生成机器语言程序或 汇编语言程序
3. 语义分析与代码生成: 根据语义规则,进行初步编译。 4. 优化:对中间代码进行等价变换,以 使代码更有效。 5. 目标代码生成:生成机器语言程序或 汇编语言程序
6符号表管理完成符号表的建立查 找更新。 7.出错处理
6. 符号表管理:完成符号表的建立,查 找,更新。 7. 出错处理
编译程序的结构源程序字符串 词法分析器 单词流 语法分析器 符号表管理程序 语法单位 →语义分析、中间代码生成器 中间代码序列 代码优化器 出错处理程序 中间代码序列 目标代码生成器 与目标程序
源程序字符串 词法分析器 语法分析器 语义分析、中间代码生成器 代码优化器 目标代码生成器 单词流 语法单位 中间代码序列 中间代码序列 目标程序 符号表管理程序 出错处理程序 编译程序的结构
第四章习题 4-2、4-3(a(b)4-4 45(a)(、46(b)、4-9.…NFA 4-10(a(b(cbabaab 均是必做题,第九周周五课后交作业
第四章习题 4-2、4-3(a)(b)、4-4 4-5(a)(c)、4-6(b)、4-9……NFA 4-10(a)(b)(c)babaab 均是必做题,第九周周五课后交作业
第五章词法分析与语法分析 第一节词法分析 词法分析的功能 1.功能 扫描源程序的字符串按照词法规则识 别出单词符号作为输出对识别过程中发 现的词法错误则输出有关的错误信息
第五章 词法分析与语法分析 第一节 词法分析 一. 词法分析的功能 1. 功能 扫描源程序的字符串,按照词法规则,识 别出单词符号作为输出;对识别过程中发 现的词法错误,则输出有关的错误信息
2.词法分析器和语法分析器的关系 (1)词法分析作为单独的一遍 输出串 词法分析器单词流 语法分析器
2. 词法分析器和语法分析器的关系 (1)词法分析作为单独的一遍 输出串 词法分析器 单词流 语法分析器
(2)词法分析作为子程序 输入串 词法分析器 取下一单词 返回下一单 符号表 词 语法分析器
(2)词法分析作为子程序 输入串 词法分析器 语法分析器 符号表 取 下 一 单 词 返 回 下 一 单 词