第一章 引 论 中间代码生成器 temp1 := inttoreal(60) temp2 := id3 * temp1 temp3 := id2 + temp2 id1 := temp3 := + * 60 id1 id2 id3 inttoreal (优秀的) 名词 (大工学子) 宾语 定语 宾语 形容词 语句 谓语 动词 (是) 主语 名词 (你们) 英语文本生成 You are good DLUTers. 第一章 引 论 代码优化器 temp1 := inttoreal(60) temp2 := id3 * temp1 temp3 := id2 + temp2 id1 := temp3 temp1 := id3 * 60.0 id1 := id2 + temp1 You are good DLUTers. 英语文本改进 You are excellent DLUTers 第一章 引 论 temp1 := id3 * 60.0 id1 := id2 + temp1 代码生成器 MOVF id3, R2 MULF #60.0, R2 MOVF id2, R1 ADDF R2, R1 MOVF R1, id1 日语文本生成 You are excellent DLUTers 君たちは大連理工大学の 優秀な学生なんです。 第一章 引 论 词法分析器 语法分析器 语义分析器 源程序 中间代码生成器 代码优化器 代码生成器 目标程序 出错管理器 符号表管理器 后三个阶段对源程序进行综合 第一章 引 论 词法分析器 语法分析器 语义分析器 源程序 中间代码生成器 代码优化器 代码生成器 目标程序 出错管理器 符号表管理器 分析和综合: 把编译过程分成分析和综合两步 分析:分析源程序以计算其特性所涉及到的操作(词法分析、语法分析、语义分析) 综合:生成目标代码时所涉及到的操作(中间代码生成、代码优化、代码生成) 辅助:符号表管理、出错处理 8项功能对应8个模块。 第一章 引 论 第一章 引 论 词法分析器 语法分析器 语义分析器 源程序 中间代码生成器 代码优化器 代码生成器 目标程序 出错管理器 符号表管理器 前端 后端 前端:依赖于源语言,独立于目标机器。 后端:依赖于目标机器,独立于源语言。 前端和后端: 把编译过程分成前端和后端两部分 前端:只依赖于源程序,独立于目标机器 (生成中间代码) 后端:依赖于目标机器,与源程序无关,只与中间语言有关(从中间代码生成目标代码) 好处:提高开发编译器的效率 取一个编译器的前端,重写它的后端以产生同一源语言在另一机器上的编译器 不同的前端使用同一个后端,从而得到一个机器上的几个编译器(采用同一中间语言) 第一章 引 论 第一章 引 论 源程序 目标机器1 目标机器2 目标机器3 目标机器n 编译器 不区分前端和后端的编译器 源程序 目标机器1 目标机器2 目标机器3 目标机器n 编译器前端 编译器后端 区分前端和后端的编译器 第一章 引 论 词法分析器 语法分析器 语义分析器 源程序 中间代码生成器 代码优化器 代码生成器 目标程序 出错管理器 符号表管理器 遍 编译的几个阶段常用一遍(pass)扫描实现,一遍扫描包括读一个输入文件和写一个输出文件。 第一章 引 论 遍 类比:刷墙艺术中的“遍”的概念 网线 水泥 瓷砖 任务:在一面墙上布置网线,并粉刷水泥,然后贴上瓷砖 第一章 引 论 遍 类比:刷墙艺术中的“遍”的概念 方法一: 第一遍:布上全部网线 网线 水泥 瓷砖 第一章 引 论 遍 类比:刷墙艺术中的“遍”的概念 方法一: 第二遍:粉刷全部墙面的水泥 网线 水泥 瓷砖 第一章 引 论 遍 类比:刷墙艺术中的“遍”的概念 方法一: 第三遍:给整个墙面贴上瓷砖 网线 水泥 瓷砖 第一章 引 论 遍 类比:刷墙艺术中的“遍”的概念 方法二: 一遍:一边布网线,一边粉刷水泥,一边贴瓷砖 网线 水泥 瓷砖 遍(趟): 一遍或一趟:是指编译程序在编译时刻把源程序或源程序的等价物(中间程序)从头到尾扫描一遍并转换成另一紧邻的等价物的全过程。 单遍扫描与多遍扫描:每一遍的扫视可完成上述一个阶段或多个阶段的工作。每一遍的输入都是上一遍的输出,第一遍的输入是源程序正文,最后一遍的输出是目标代码。 单遍与多遍的比较: 遍数多:编译器结构清晰,但时间效率不高 遍数少:编译速度快,但对机器的内存要求高
您可能关注的文档
- 边坡设计的基本资料.docx
- 边坡稳定分析Janbu条分法.docx
- 边坡稳定分析边坡大变形的流形元法.docx
- 边坡稳定分析边坡工程的反分析法.docx
- 边坡稳定分析不平衡推力传递系数法.docx
- 边坡稳定分析瑞典圆弧法.docx
- 边坡稳定分析有限元法.docx
- 边坡稳定性分析基本理论和假定.docx
- 变电运行工安全操作规程.docx
- 变电站供电线路运行、维护及管理工程发生恶劣自然灾害应急预案.docx
- 2025年北京市门头沟区中考一模英语试题.docx
- 2025年北京市门头沟区中考二模英语试题.docx
- 2025年北京市丰台区中考二模英语试题.docx
- 2025年中考英语考前冲刺模拟卷 (北京专用) 解析卷.docx
- 2025年中考英语考前冲刺模拟卷 (北京专用) 原卷.docx
- 2025年肩颈按摩仪行业社媒趋势数据分析.docx
- 2025年人身险行业信用回顾与2026年展望.docx
- 合同法买卖合同培训课件.ppt
- 2025年全球食物系统与SDG研究报告-食物供给、食者健康、生态平衡的整体治理.docx
- 2025下半年四川乐山市川投峨眉铁合金(集团)有限责任公司对考前自测高频考点模拟试题最新.docx
最近下载
- 《叶圣陶语文教育论集》序原文全文阅读.docx VIP
- 《五年级数学上册计算题每日一练(共28套)》通用.docx VIP
- HK-2301便携式水质综合分析仪说明书(2015.2.12).pdf VIP
- 量化投资 课件 第7、8章 APT理论和多因子收益率模型、基于信息的预测.pptx
- 小学二年级数学下册乘法口算练习题(每日一练,共27份).pdf VIP
- 小学三年级数学下册乘法计算专项练习题(每日一练,共15份).pdf VIP
- 小学三年级数学下册乘法计算专项练习题(每日一练,共26份).docx VIP
- 子宫腺肌病治疗与管理教程.ppt
- 三年级数学下册应用题专项练习题(每日一练) (9).docx VIP
- 三年级数学下册应用题专项练习题(每日一练) (5).docx VIP
原创力文档

文档评论(0)