编译原理概述课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《编译原理概述课件.ppt》由会员分享,可在线阅读,更多相关《编译原理概述课件.ppt(63页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、编译原理概述第1页,此课件共63页哦计算机专业的专业基础课专业基础课,主要解决高级语言的运行问题是软件技术的基础计算机专业学生必修的一门主干课程是本学科研究生入学考试的课程之一课程概述课程概述1 1:课程地位:课程地位第2页,此课件共63页哦本课程介绍如何将高级程序设计语言变换成计算机硬件所能识别的机器语言。编译原理介绍编译程序的原理编译程序的原理,如何编程使高到低。其理论基础坚实,其形式化系统不仅应用于编译技术,还大量应用于人工智能、多媒体技术及数据库等领域。例如:翻译风,一个翻译的过程课程概述课程概述2 2:编译的作用:编译的作用第3页,此课件共63页哦掌握编译理论基础理论基础和形式化系统
2、形式化系统(过程、思想,对其思想用数学格式描述)了解编译的全过程及其具体实现方法课程概述课程概述3 3:学习任务:学习任务第4页,此课件共63页哦认真听课,理论书中基本概念、基本原理与基本算法(枯燥,原理性强,数学性强,符号多,自己看书比较麻烦)弄懂书中例题和认真对待课后习题在看书或理解例题时,一定要划出相应的细节变化过程,通过画图来加深理解在理解基础上记忆(算法原理概念都是经典内容)课程概述课程概述4 4:学习方法:学习方法第5页,此课件共63页哦上课认真听讲,独立完成作业成绩考核:平时成绩占30(出勤、课堂表现、作业)期末考试占70(笔试)课程概述课程概述5 5:学习要求:学习要求第6页,
3、此课件共63页哦编译原理编译原理知识结构知识结构第7页,此课件共63页哦1.1.掌握编译程序中所涉及的有关名词术语掌握编译程序中所涉及的有关名词术语2.2.理解编译程序总的框架,明确编译程序工作的理解编译程序总的框架,明确编译程序工作的基本过程及各阶段的基本任务基本过程及各阶段的基本任务教学目标教学目标第第1 1章章编译概述编译概述第8页,此课件共63页哦自然语言人与人交流的一种工具人与计算机如何交流?通过程序设计语言将问题编写成程序,计算机按程序的计算步骤计算出结果程序设计语言程序设计语言第9页,此课件共63页哦低级语言低级语言(Low level Language)字位码、机器语言、汇编语
4、言字位码、机器语言、汇编语言特特点点:与与特特定定的的机机器器有有关关,功功效效高高,但但使使用用复复杂杂、繁繁琐、费时、易出错琐、费时、易出错高级语言高级语言 -Fortran、Pascal、C 语言等语言等特点:不依赖具体机器,移植性好、对用户要求低、易使特点:不依赖具体机器,移植性好、对用户要求低、易使用、易维护等。用、易维护等。程序设计语言程序设计语言第10页,此课件共63页哦计算机的核心部件只能读懂自己的指令系统,不能执行非机器语言编写的程序计算机如何执行高级语言?把高级语言程序翻译翻译成机器语言程序运行运行所得机器语言程序求得计算结果 程序设计语言程序设计语言第11页,此课件共63
5、页哦源程序源程序 用汇编语言或高级语言编写的程序称为源程序目标程序目标程序 用目标语言所表示的程序 目标语言:可以是介于源语言和机器语言之间的“中间语言”,可以是某种机器的机器语言,也可以是某机器的汇编语言。翻译程序翻译程序 将源程序转换为目标程序的程序称为翻译程序。它是指各种语言的翻译器,包括汇编程序和编译程序,是汇编程序、编译程序以及各种变换程序的总称。第12页,此课件共63页哦源程序、翻译程序、目标程序源程序、翻译程序、目标程序 三者关系:三者关系:源程序翻译程序目标程序SOURCE PROGRAMTRANSLATER OBJECT PROGRAM即源程序是翻译程序的输入,目标程序是翻译
6、程序的输出即源程序是翻译程序的输入,目标程序是翻译程序的输出S OI第13页,此课件共63页哦汇编程序汇编程序 若源程序用汇编语言书写,经过翻译程序得到用机器语言表示的程序,这时的翻译程序就称之为汇编程序,这种翻译过程称为“汇编”(Assemble)编译程序编译程序 若源程序是用高级语言书写,经加工后得到目标程序,上述翻译过程称“编译”(Compile)汇编程序与编译程序都是翻译程序翻译程序,主要区别是加工对象的不同。由于汇编语言格式简单,常与机器语言之间有一一对应的关系。汇编程序所要做的翻译工作比编译程序简单的多。第14页,此课件共63页哦源程序的编译和运行源程序的编译和运行编译或汇编阶段编
7、译或汇编阶段源程序目标程序编译程序编译程序或汇编程序或汇编程序输出数据目标程序目标程序+运行子程序运行子程序输入数据运行阶段运行阶段第15页,此课件共63页哦n编译程序是现代计算机系统的基本组成部分n从功能上看,一个编译程序就是一个语言翻译程序语言翻译程序n它是把一种语言(称作源语言)书写的程序翻译成另一种语言(称作目标语言)的等价等价的程序 编译程序编译程序第16页,此课件共63页哦n两阶段转换:编译运行(compilerun)术语术语编译程序的源语言(源程序)编译程序的目标语言(目标程序)源程序编译程序目标代码编译时初始数据运行子程序目标代码计算结果运行时(*.C/*.PAS)(*.OBJ
8、/*.EXE)编译的过程转换编译的过程转换第17页,此课件共63页哦n三阶段转换:编译汇编运行源程序编译程序汇编语言编译时目标代码汇编程序汇编时初始数据运行子程序目标代码计算结果运行时.exe.obj 编译的过程转换编译的过程转换第18页,此课件共63页哦高级语言程序的处理过程第19页,此课件共63页哦n以源程序作为输入,不产生目标程序,一边解释一边执行不产生目标程序,每次执行源程序,都必须解释一次不产生目标程序,每次执行源程序,都必须解释一次 解释程序解释程序 特点:与编译系统比较,解释系统较简单、可移植性好,易于查错,但速度慢输出数据解释程序解释程序输入数据源程序第20页,此课件共63页哦
9、编译编译 (笔译,程序到程序)由高级语言转换为低级语言,如C,Pascal语言解释解释 (口译,语句到语句)接受某高级语言的一个语句输入,进行解释并控制计算机执行,马上得到这句的执行结果,然后再接受下一句。不产生目标程序不产生目标程序,直观简单,但效率低,如Basic语言n翻译:能把某种语言的源程序,在不改变语义不改变语义的条件下,转换成另一种语言程序目标语言程序。n两种实现方式:程序设计语言的转换程序设计语言的转换第21页,此课件共63页哦编译程序是源程序的一个转换系统转换系统解释程序是源程序的一个执行系统执行系统两者在实现技术上并无很大差别,都要完成词法分析、语法分析、语义分析等工作。编译
10、和解释编译和解释第22页,此课件共63页哦1.2 1.2 编译过程和编译程序的结构编译过程和编译程序的结构翻译和编译工作的比较翻译和编译工作的比较翻译外文编译程序分析识别单词分析句子根据语义进行初步翻译词法分析语法分析语义分析、生成中间代码综合修辞加工写出译文代码优化目标代码生成第23页,此课件共63页哦编译程序工作时,先分析,后综合分析分析:指词法分析和语法分析;综合:综合:指代码优化,存储分配和代码生成。为完成上述分析综合任务,编译程序采用对源程序进行一次或多次扫描的办法。如:第一遍扫描做词法分析;第二遍扫描做语法分析;第三遍扫描做代码优化和存储分配;第四遍扫描做代码生成。编译过程编译过程
11、第24页,此课件共63页哦 从输入源程序开始到输出目标程序为止的整个过程可分为六个阶段:词法分析语法分析语义分析中间代码生成代码优化目标代码生成对源程序结构的分析 编译过程编译过程第25页,此课件共63页哦任务:任务:根据根据词法规则词法规则分析和识别单词单词一、词法分析一、词法分析单词单词:是语言的基本语法单位 保留字保留字(如:if、else、while)标识符标识符(如:max、min、str)常数常数 (如:12、6.8、a)算符、界符算符、界符(如:+、-、*、/、;、(、)字符序列字符序列编码形式编码形式第26页,此课件共63页哦词法分析程序的结果词法分析程序的结果-二元式二元式y
12、=x+r*6单词值单词类别y标识符=算符(赋值)x标识符+算符(加号)r标识符*算符(乘号)6常数第27页,此课件共63页哦Void jisuan()()int y,c,d;float x,a,b;x=a+b*50;y=c+)d*(x+b;请识别上段代码中的单词第28页,此课件共63页哦词法分析(lexical analysis or scanning)-The stream of characters making up a source program is read from left to right and grouped into tokens,which are sequence
13、s of characters that have a collective meaning.单词-token保留字-reserved word标识符-identifier(user-defined name)相关术语相关术语第29页,此课件共63页哦任务:任务:根据根据语法规则语法规则(即语言的文法),分析并识别出各(即语言的文法),分析并识别出各种种语法成分语法成分(如表达式、语句、函数等),并进行(如表达式、语句、函数等),并进行语法语法正确性检查正确性检查。通过语法分解,确定整个输入串是否构成语法上正确的句子、程序等语法规则的表示:语法规则:规定单词如何构成短语、语句、过程、程序A:=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 概述 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内