网站大量收购独家精品文档,联系QQ:2885784924

编译原理-引论.ppt

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理-引论

编译原理 -引论 主要内容 编译系统及其设计概述(总体结构、设计方法——2 ) 语言与文法(文法、推导、归约、分类、分析树——4) 词法分析(词法分析、正规式与正规文法、DFA的状态转移图——6) 语法分析(自顶向下:LL(1)、递归子程序;自底向上:算符优先、 LR——16) 语义分析(属性文法、各种语句的语法制导翻译——10) 运行环境(存储分配、过程调用、符号表管理——6) 代码优化(基本块的优化、控制流分析、循环优化、数据流分析——2) 代码生成(目标机器模型、基本块和流图、寄存器分配、基本块的DAG表示、从 DAG生成目标代码——2) 教学目的——《编译原理》是一门非常好的课程 Alfred V.Aho:编写编译器的原理和技术具有十分普遍的意义,以至于在每个计算机科学家的研究生涯中,本书中的原理和技术都会反复用到 涉及的是一个比较适当的抽象层面上的数据变换(既抽象,又实际) 一些具体的表示和变换算法 “自顶向下的方法”和“自底向上的方法”系统设计方法(思想、方法、实现全方位讨论) 一个相当规模的系统的设计(含总体结构) 计算机专业最为恰当、有效的知识载体之一 教学要求 掌握编译程序总体结构 在系统级上认识算法、系统的设计 具有把握系统的能力 学习有关的原理、实现方法和技术,了解计算学科的基本方法、思想 掌握典型方法。 “在每一个计算机科技工作者的职业生涯中,这些原理和技术都被反复用到。” 兼顾语言的描述方法、设计、应用——形式化 能形式化就能自动化 进一步培养“计算机思维能力” 软件系统的非物理性质 学习成果__以学生为中心 理解和掌握编译过程各个阶段的工作原理 理解标准编译器各个组成部分的任务 熟悉编译过程各阶段所要解决的问题及其采用的方法和技术 应用一些标准的技术解决编译器构造过程中所产生的相关问题 理解编译器在生成代码时如何充分利用特定处理器的特征 教、学方法 教学方法 整体性——从系统的角度 启发式——以学生为中心 应用驱动——技术、方法的应用背景 学习方法 源程序是源泉 把每个阶段放到整个编译程序背景中学习 认真做作业 编程序 第1章 引论 1.1 计算机语言的发展 1.2 翻译系统 1.3 编译系统的功能分析 1.4 编译程序总体结构 1.5 编译程序的生成 1.6 编译技术的应用 1.1 计算机语言的发展 机器语言(Machine Language)与汇编语言(Assemble Language) 0、1代码与助记符:更接近于计算机硬件指令系统的工作 高级语言(High Level Language) 其表示方法更接近于待解问题的表示方法 定义数据、描述运算、控制流程、传输数据 如:C、FORTRAN、PASCAL、C++、JAVA、SQL(数据定义、数据操作) 命令语言(Command Language) 控制系统的工作——以功能封装为特征 如UNIX上的shell 高级语言的分类 强制式(命令式)语言(Imperative Language) 通过指明一系列可执行的运算及运算的次序来描述计算过程的语言; FORTRAN(段结构)、BASIC、Pascal(嵌套结构)、C…… 程序的层次性和抽象性不高 申述式语言(Declarative Language) 着重描述要处理什么,而非如何处理的非命令式语言 函数(应用)式语言(Functional Language) 基本运算单位是函数,如LISP、ML…… 逻辑式(基于规则)语言(Logical Language) 基本运算单位是谓词,如Prolog,Yacc…… 面向对象语言(Object-Oriented Language) 以对象为核心,如Smalltalk、C++ 、Java、Ada(程序包)…… 具有识认性(对象)、类别性(类)、多态性和继承性 1.2 翻译系统 翻译程序(Translator) 将某一种语言描述的程序(源程序——Source Program)翻译成等价的另一种语言描述的程序(目标程序——Object Program)的程序。 1.2 翻译系统 解释程序(Interpreter) 口译与笔译(单句提交与整篇提交) 1.2 翻译系统 编译程序(Compiler) 高级语言程序→汇编/机器语言程序 1.2 编译系统 SP Compiler S-Source O-Object OP P-Program Input RS RS-Run Sys. Output 1.2 翻译系统 其它: 诊断编译程序(Diagnostic Compiler) 优化编译程序(Optimizing Compiler) 交叉编译程序(Cross Compiler) 可

文档评论(0)

kanghao1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档