《数字逻辑基础》PPT课件.ppt_第1页
《数字逻辑基础》PPT课件.ppt_第2页
《数字逻辑基础》PPT课件.ppt_第3页
《数字逻辑基础》PPT课件.ppt_第4页
《数字逻辑基础》PPT课件.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、3,4,编译程序,目标程序,源程序,就是把高级语言程序翻译成等价的低级语言的过程。,编译系统:编译程序和运行程序,1.1 什么是编译,5,词 法 分 析,语 法 分 析,语 义 分 析,中间代码生成,优 化,目标代码生成,目标代码,源 程序,符 号 表 管 理,错 误 诊 查 处 理,1.2 编译程序的逻辑结构,6,1.3 编译器各阶段的工作,源程序: PROGRAM m; VAR a,b,c:real; BEGIN read(b,c); a:=b+c*60; write(a) END.,7,1.3.1经词法分析源程序被加工成单词流, ,8,赋值语句,变 量,: =,表达式,表达式,+,项,项

2、,因子,b,项,*,因子,因子,c,60,a,1.3.2 赋值语句经语法分析生成分析树,9,:=,a,+,b,*,c,inttoreal,60,1.3.3 赋值语句经语义分析生成语法树,10,1.3.4 生成中间代码,temp1:=inttoreal(60); temp2:=c * temp1; temp3:=b +temp2; a :=temp3;,11,优 化,Temp1 :=c * 60.0 a := b+temp1,生成目标代码,movf c , r2 ; mulf #60.0 , r2 ; movf b , r1 ; addf r2 , r1 ; movf r1 , a ;,1.3.

3、5 编译后端,中间代码,12,1.3.6 维护符号表,13,1.3.7 错误的诊查处理,编译程序在各个阶段应诊断和报告源程序中的错误,包括词法错误,语法错误,语义错误。 编译程序应报告出错地点,并给出简明准确的提示信息。,14,1.4 编译程序(器)的组织,前端和后端 源程序 中间代码 目标代码 仅依赖源程序 仅依赖目标计算机,前端,后端,15,遍(PASS): 对输入文件(源程序或其等价的中间形式)从头到尾扫视,完成预定的处理。,遍 PASS,输入文件,输出文件,16,词法 分析,语法分析,语义分析和 中间代码生成,源程序,中间代码,符 号 表 管 理,错 误 的 诊 查 处 理,把前端组织

4、成一遍扫描,17,1.5 编译器的设计,编译程序,源程序,目标程序,抽 象,目标,编译,运行,18,首先研究源程序的语法和语义及运行模型,源是设计编译程序的出发点。 研究目标计算机,设计目标代码的指令系统,它是由目标计算机扩充而成,扩充后的计算机称作抽象计算机。目前的通用计算机往往和源语言执行模型不一致。 设计编译程序由几遍完成,每遍的工作等。,19,1.6 教和学的几个问题,重要性: 新的处理器的研制; 处理字符串的一般方法; 构造大程序的方法。 研究课题: 新的语言及实现技术; 构造编译程序的工具; 并行编译技术。,20,学习方法 : (1)源程序是源泉; (2)把每个阶段放到整个编译程序

5、结构中 学习; (3)认真做作业。 每周有一次答疑。 参与网上教材的修改与创新。,21,1.7 教材和参考书 1.7.1 教材 1. 杜淑敏等编著, 编译程序设计原理: 北京大学出版社,1997.12。 2. 网络版。,22,(1)吕映芝等,编译原理:清华大学出版社,1998。 (2)陈火旺等,程序设计语言编译原理:国防工业 出版社,1984。 (3)Alfred V.Aho, Ravi SethiJeffrey D .Ullman , Compilers:Principles, Techniques, and Tools, Addison-Wesly,1986 。 (4)Andrew W .Appel and Maia Ginsburg ,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论