




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、编译原理课程,编译原理,任课教师:许东 计算机学院:智能信息处理研究室 Email:,编译原理课程,第一章 编译程序概论,1.1 什么是编译程序 1.2 编译过程概述 1.3 编译程序的结构 1.4 编译阶段的组合 1.5 编译技术和软件工具,编译原理课程,1.1 什么是编译程序,一个编译程序就是一个语言翻译程序。它把一种语言(称作源程序)书写的程序翻译成另一种语言(称作目标语言)的等价的程序,编译原理课程,1.1 什么是编译程序,编译原理课程,1.1 什么是编译程序,例子:C 语言的编译过程 Cl filename.c /E filename.I.c Cl filename.I.c /Fof
2、ilename.obj /c Link filename.obj /OUT:exefilename,编译原理课程,1.2 编译过程概述,词法分析 语法分析 语义分析 中间代码生成 代码优化 目标代码生成,编译原理课程,编译过程概述,编译原理课程,词法分析阶段,这个阶段的任务是从左到右一个字符一个字符地读入源程序对构成源程序的字符流进行扫描和分解。 例子:getword.c,编译原理课程,语法分析,语法分析的任务是在词法分析的基础上将单词序列分解成各类语法短语,如“程序”,“语句”,“表达式”等等。一般这种语法短语,也称语法单位,可表示成语法树。 例子:lex1.l parser1.y lex1
3、.c parser1.c,编译原理课程,语义分析阶段,审查源程序有无语义错误,为代码生成阶段收集类型信息。如类型检查、强制类型转换等。,编译原理课程,中间代码生成,“中间代码”是一种结构简单、含义明确的记号系统。很多编译程序采用了一种近似“三地址指令”的“四元式”。 四元式的形式为(运算符,运算对象1,运算对象2,结果),编译原理课程,代码优化,此阶段的任务是对前阶段产生的中间代码进行变换或进行改造,目的是使生成的目标代码更为高效。,编译原理课程,目标代码生成,这一阶段的任务是把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编代码。,编译原理课程,编译程序的结构,词法分析程序 语法分析程序 语义分析程序 中间代码生成程序 代码优化程序 目标代码生成程序 出错处理程序 表格管理程序,编译原理课程,1.4 编译阶段的组合,编译过程的前端(front end) 词法分析、语法分析、语义分析和中间代码生成等 编译过程的后端 (back end) 目标代码生成等,编译原理课程,1.5 编译技
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司电子文件管理办法
- 农村养殖消毒管理办法
- 全国绿化先进管理办法
- 公司驻地外派管理办法
- 医学器材项目管理办法
- 关于超市采购管理办法
- 公路项目试验管理办法
- 办理国库业务管理办法
- 制定学校作业管理办法
- 北京应急物资管理办法
- 2025年新疆维吾尔自治区生产建设兵团中考语文真题(解析版)
- 护理事业十五五发展规划(2026-2030)
- 林下中药材种植项目可行性研究报告
- 中国教育学会会员申请表
- 《教育政策法规》全书word版
- 黄大年式教师团队申报
- 新冀人版小学科学三年级下册全册教案(2022年春修订)
- 工作场所空气中有害物质监测的采样规范
- 国家开放大学电大《可编程控制器应用》机考2套真题题库及答案10
- 畜牧场经营管理.ppt
- DIN EN 755-1铝及铝合金 挤压杆、条、管和型材第1部分交货技术条件(新)
评论
0/150
提交评论