- 1、本文档共50页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程 序 设 计 语 言 编 译 原 理 教 材 《程序设计语言编译原理》第三版 陈火旺、刘春林等, 国防工业出版社,2000 主要参考资料 学时情况 总学时 : 64 学时 学 分 : 3.5 讲 课 : 48 学时 上 机 : 16 学时 考 核 平时作业: 10% 上 机: 10% 期末考试: 80% 后续课程 编译原理课程设计专题实验 32学时,1.5学分 第1章 编译程序概论 §1.1 什么是编译程序 §1.1.1 什么是程序设计语言 程序设计语言(Programming Language) 通常泛指一切用于编写计算机程序的语言。 它是人与计算机之间进行信息交流的工具。 包括 机器语言:采用二进制来表示 (低级语言) 汇编语言:采用机器语言的助记符来表示 (低级语言) 高级语言:采用完全符号形式化的方式来表示, 它独立于具体的计算机硬件。 程序设计语言特性 程序语言需要的支持环境 §1.1.2 高级程序设计语言的发展 FORTRAN (FORmula TRANslation) LISP (LISt Processor) PASCAL C C++ JAVA §1.1.3 编译程序定义 §1.1.4 解释程序定义 §1.1.5 编译程序分类 §1.2 编译过程概述 §1.2.1 词法分析工作 §1.2.2 语法分析工作 分析出句子的语法结构。一般用语法树表示; 不合乎语法规则的输入流,报:语法错误。 §1.2.3 语义分析工作 (中间代码生成) §1.2.4 优化工作 §1.2.5 目标代码生成 解释程序的工作 §1.3 编译程序的结构 §1.3.1 编译程序的总框 §1.3.2 编译的“前端”,“后端” §1.3.3 遍 (趟,pass) 典型的四遍编译过程 §1.4 编译程序的生成 学习要点 §1.5 课程特征 为什么学编译原理 1. 涉及计算机学科中,许多抽象问题、解决问题的思路和方法; 2.掌握程序语言的内部实现机理,对程序语言的理解更加深入全面; 3.课程中包含了很多软件技术,是专业经验积累的一种途径。 作 业 优化的编译器 SGI C++ 针对奔腾CPU优化 The Portland Group C++ 支持x86嵌入式系统 Paradigm C++ Microsoft C++ 支持多平台 Metrowerks C++ Interstron C++ 支持Windows, Linux, 嵌入式系统 Intel C++ IBM C++ HP C++ 支持嵌入式系统平台 Green Hills C++ 被许多C++编译器厂商采用 Edison Design Group C++ Front End Digital Mars C++ Compaq C++ Borland C++ 收费 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 多种版本,特性不同 注重程序开发 —— 带集成调试环境的 (即:可以编辑,编译,执行,调试) 注重程序调试 —— 诊断编译程序 注重提高目标代码效率 —— 优化编译程序 注重运行环境 注重使用方便性 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 标准化低 6.0版 —83.43% Visual Studio 6.0 —100%符合 ANSI/ISO的C++ 以及C99标准。 Borland C++ Builder X Intel 开源 MS Borland 提供者 特定机型 对:Intel x86结构的CPU经过特别优化, 数值计算等应用能大幅度提高性能。 Intel C++ 代码规模、 速度略差 移植性好 跨平台 嵌入式 GCC3.3 —96.15% Mingw、 Cygwin、 Djgpp 等 GNU C++ 开发环境 强大 7.1版 —98.22% Visual C++ 某些版本 不稳定 速度快, 空间效率高 5.5版 —92.73% Borland C++ Builder Borland C++ 不足 优点 标准化(与C++标准的兼容性) 其他评价指标:开发环境,库,帮助,调试工具等 C++
文档评论(0)