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

柳青《编译技术》Comp-Cha1.pptVIP

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * 编译技术 * * 编译技术 * * 编译技术 * * 编译技术 * * 编译技术 * * 编译技术 * * 编译技术 * * 编译技术 * * 编译技术 编译技术 * * 柳 青 E-mail: liuqing@ynu.edu.cn 2013—2014学年下学期 课程的性质与任务 “编译技术”是计算机类专业特别是计算机软件工程专业的一门重要专业课。 开设本课程的目的,在于系统地介绍编译系统的结构、工作流程及编译程序各组成部分的设计原理和实现技术。 下一页 上一页 课程的性质与任务 尽管“编译程序”是特指将高级程序设计语言翻译成低级语言的软件,但编译程序构造的基本原理和技术也广泛应用于一般软件的设计和实现。 通过学习本课程,既掌握编译理论和方法方面的基本知识,也具有设计、实现、分析和维护编译系统等大中型软件方面的初步能力。 下一页 上一页 第一章 编译程序概论 1.1 什么是编译程序 1.2 编译过程概述 1.3 编译阶段的组合 1.4 编译技术和软件工具 1.5 程序设计语言范型 学习要点 下一页 上一页 1.1 什么是编译程序 程序设计语言与程序的翻译 (1)程序设计语言 机器语言: 由0、1代码构成,不需翻译就可直接执行其程序。 汇编语言: 机器指令助记符(伪代码)形式,汇编后才可执行其程序。 例如80386宏汇编语言。 高级程序设计语言: 类自然语言和数学公式形式,例如 FORTRAN(1956,第1个高级语言),BASIC, ALGOL, COBOL, PL/1, PASCAL,Ada, C, C++, Java, C# 等。 下一页 上一页 (2) 基本术语 源程序(Source Program):用源语言写的程序。源语言可以是汇编语言,也可以是高级程序设计语言。 目标程序(Target Program) :也称为“结果程序”,是源程序经翻译程序加工以后所生成的程序。目标程序可以用机器语言表示,也可以用汇编语言或其它中间语言表示。 翻译程序(Translating Program):是指把一个源程序翻译成逻辑上等价的目标程序的程序。源程序为其输入,目标程序为其输出。 汇编程序(Assembler):是指把一个汇编语言写的源程序转换成等价的机器语言表示的目标程序的翻译程序。 下一页 上一页 编译程序(Compiler):若源程序是用高级程序设计语言所写,经翻译程序加工生成目标程序,则该翻译程序就称为“编译程序”,也可称为编译器。 运行系统(Running System):目标程序执行时,需要有一些子程序(如一些连接装配程序及一些连接库等)配合进行工作,由这些子程序组成的一个子程序库称为运行系统。 编译系统(Compiling System): 编译程序和运行系统合称编译系统。 (3) 程序的翻译 除机器语言程序外,用其它语言书写的程序都必须经过翻译才能被计算机识别。这一过程由翻译程序来完成。 下一页 上一页 翻译程序: 甲语言编写的程序 翻译程序 等价的乙语言程序 其中:甲语言称为该翻译程序的源语言,用源语言书写的程序称为源程序, 乙语言称为该翻译程序的目标语言,目标语言程序称为目标程序。 编译方式与编译程序: 编译方式是一种分阶段进行的方式,包括翻译和运行两部分。 前一阶段:翻译 某高级语言书写的程序 编译程序 等价的某计算机的汇编语言程序或机器语言 后一阶段:运行 由运行系统配合完成。 下一页 上一页 1.2 编译过程概述 编译程序完成从源程序到目标程序的翻译工作,是一个复杂的整体的过程。从概念上来讲,一个编译程序的整个工作过程是划分阶段进行的。下图给出了一个编译过程的6阶段(8个部分),这是一种典型的划分方法。 源程序 词法分析 语法分析 语义分析 中间代码生成 代码优化 目标代码生成 目标代码 表 格 管 理 出 错 处 理 下一页 上一页 简述其中各阶段的任务: 1、词法分析阶段 这个阶段的任务是从左到右一个字符一个字符地读入源程序,对构成源程序的字符流进行扫描和分解,从而识别出一个个单词(也称单词符号或符号TOKEN)。 词法分析阶段将构成这段程序的字符组成了如下单词序列: 1. 保留字 begin 2. 保留字 var 3. 标识符 sum 4. 逗号 , 5

文档评论(0)

***** + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8135026137000003

1亿VIP精品文档

相关文档