编译程序概论引论.ppt
《编译程序概论引论.ppt》由会员分享,可在线阅读,更多相关《编译程序概论引论.ppt(35页珍藏版)》请在三一办公上搜索。
1、第1章 编译程序概论,2023/11/6,第1章 编译原理概论,Page 2,第1章 编译原理概论,学习目标掌握:编译的各个阶段理解:编译程序的概念了解:解释器,编译程序的结构和组合,2023/11/6,第1章 编译原理概论,Page 3,第1章 编译原理概论,编译是什么?编译有什么用/为什么需要编译?编译怎么实现这个功能/作用?,2023/11/6,第1章 编译原理概论,Page 4,第1章 编译原理概论,回想使用VC 6.0运行程序的过程:编译链接执行,检查词法是否正确,检查语法是否正确,将正确的高级语言生成机器能理解的目标代码,机器语言汇编语言,2023/11/6,第1章 编译原理概论,
2、Page 5,第1章 编译原理概论,1.1 什么是编译程序1.2 编译过程概述1.3 编译程序的结构1.4 编译阶段的组合1.5 编译技术和软件工具,2023/11/6,第1章 编译原理概论,Page 6,1.1 什么是编译程序,1、翻译程序:2、编译程序:3、汇编程序:,Fortran,Pascal,C,汇编语言,机器语言,2023/11/6,第1章 编译原理概论,Page 7,1.1 什么是编译程序,4高级语言程序的处理过程,(1)编译的方式,由“编译程序”把源程序全部翻译成二进制代码,可反复执行。,2023/11/6,第1章 编译原理概论,Page 8,1.1 什么是编译程序,4高级语言
3、程序的处理过程,(2)解释的方式,一句一句地读进高级语言源程序;边翻译边执行;翻译完成即得出执行结果;下次再执行时重新翻译。,由“解释程序”对源程序逐个语句一边翻译,一边执行,执行速度慢,便于观察调试程序。,2023/11/6,第1章 编译原理概论,Page 9,1.1 什么是编译程序,4高级语言程序的处理过程,(3)解释器(interpreter)与编译器,共同点:都是语言的一个实现系统不同点:,解释器是源程序的一个执行系统,工作结果得到源程序的执行结果;编译器是源程序的转换系统,工作结果得到等价于源程序的某种目标程序,2023/11/6,第1章 编译原理概论,Page 10,1.1 什么是
4、编译程序,5编译程序的发展以机器语言、汇编语言为工具 以高级语言为工具编译程序自动生成工具 自编译技术并行编译技术,2023/11/6,第1章 编译原理概论,Page 11,1.2 编译过程,2023/11/6,第1章 编译原理概论,Page 12,1.2 编译过程,1、词法分析阶段从左到右一个字符一个字符地读入源程序,对构成源程序的字符流进行扫描和分解,从而识别出一个个单词(Token)。单词:语法上具有独立意义的最小单位(标识符,基本字,算符,界符等)识别规则:词法规则,在数中出现非数字字符标识符不是以字母和下划线打头,词法错误,1.2 编译过程,2023/11/6,第1章 编译原理概论,
5、Page 13,词法错误,2023/11/6,第1章 编译原理概论,Page 14,1.2 编译过程,例:源程序 begin var sum,first,count:real;sum:=first+count*10 end.,2023/11/6,第1章 编译原理概论,Page 15,1.2 编译过程,2、语法分析阶段任务:在词法分析的基础上,将单词序列分解成各类语法短语,表示成语法树。识别规则:语法规则。判断输入串是否构成一个语法上正确的程序,并生成语法树。,else没有匹配的if表达式缺少分号结尾,语法错误,1.2 编译过程,2023/11/6,第1章 编译原理概论,Page 16,语法错误
6、,2023/11/6,第1章 编译原理概论,Page 17,1.2 编译过程,例:赋值语句 sum:=first+count*10赋值语句规则:=“:=”:=“+”:=“*”:=“(”“)”:=:=:=,2023/11/6,第1章 编译原理概论,Page 18,1.2 编译过程,3、语义分析阶段任务:审查源程序有无语义错误,为代码生成阶段收集类型信息。识别规则:语义规则识别结果进行类型转换或报告类型错误类型审查(静态语义):上下文相关性类型匹配类型转换,数组下标越界声明和使用的函数没有定义零作除数,语义错误,1.2 编译过程,2023/11/6,第1章 编译原理概论,Page 19,语义错误,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译程序 概论 引论

链接地址:https://www.31ppt.com/p-6498384.html