电子科技大学计算机科学与工程学院编译原理课件第01章 绪论.pptVIP

  • 14
  • 0
  • 约6.5千字
  • 约 76页
  • 2019-05-06 发布于广东
  • 举报

电子科技大学计算机科学与工程学院编译原理课件第01章 绪论.ppt

程序设计语言与编译 电子科技大学 计算机学院 一. 教材 程序设计语言与编译 ——语言的设计与实现(第2版) 龚天富,电子工业出版社,2003年 二. 参考书 高级程序设计语言概论,龚天富等 编译原理技术与工具,Aho等 程序设计语言编译原理 ,陈火旺等 现代编译原理 ,Andrew等 三. 关于教学 1. 课程设置: 64+16 学时 2. 先修课程: 数据结构 形式语言与自动机 C语言(或Pascal语言 ) 四. 教学内容 涉及语言及其编译系统的设计要素,设计思想,设计方法和设计技术等知识。 1)上篇,程序设计语言的设计包括:绪论,数据类型,控制结构,语言设计; 2)下篇,程序设计语言的实现(编译)包括:编译概述,词法分析,语法分析,语义分析和中间代码生成,代码优化和目标代码生成,运行时存储空间的组织。 五.学习目标 掌握设计和实现一个程序设计语言的基本思想和方法。 具有分析、鉴赏、评价、选择、学习、设计和实现一个语言的基本能力。 六. 课程的重要性 自从1954年世界上第一个高级语言编译器—FORTRAN语言编译器问世以来,编译技术不断进步,它已经成为计算机科学中发展最迅速、最成熟的一个重要分支。 编译技术集中体现了计算机科学发展的重要成果与精华。 课程的重要性 ACM图灵奖是授予在计算机技术领域作出突出贡献的科学家的最高奖励. 自1966年设立以来,程序设计语言、编译理论与方法的方面的得奖成果约占总数的1/3。(参见WORD文档) 课程的重要性 从计算机应用的发展来看,编译技术在其中有着极其重要的和不可替代的作用。 正是在编译技术的支持下,程序设计才从以繁琐的低级语言为工具,发展到以接近自然语言和数学语言的高级程序设计语言为工具; 软件开发也从模块化的软件开发方法发展到了面向对象的开发方法。编译技术的发展极大地提高了软件开发的效率,深刻地影响着软件开发方法的变革。 课程的重要性 语言是软件设计与开发最重要的工具. 程序设计语言数以千计,千姿百态,在发展与变化之中体现出很多共性,又各具特点和优势,更有不少的创新。 有必要从语言设计和实现层面展现这些共性和语言发展的脉络及全貌,这是计算机专业人员需要透彻了解的。 课程的重要性 编译原理课程以介绍程序设计语言的设计和编译程序构造的基本原理和设计方法为教学目标。 通过本课程的学习 1)掌握和理解语言设计的理论和方法; 2)掌握和理解编译系统的结构、工作流程以及编译程序各组成部分的设计原理和实现技术,获得分析、设计、实现和维护编译系统的初步能力; 3)提高对程序设计语言、操作系统、计算机原理和体系结构等课程知识的综合理解。 结论 从计算机专业人才的知识结构和专业素养的培养而言, 编译原理是高等学校培养计算机专业人才的核心课程。 内容安排 上篇 程序设计语言的设计 下篇 程序设计语言的实现 第1章 绪论 本章将讨论程序设计语言中的一些重要概念,为深人了解程序设计语言打下基础。 简介程序设计语言的发展历史。 1.1 引言 1.程序设计语言的产生 语言是人们交流思想的工具。人类在长期的历史发展过程中,为了交流思想、表达感情和交换信息,逐步形成了语言----自然语言。 用于计算机的各种人工语言称为程序设计语言。目的是进行人机通信。 2.程序设计语言的发展 机器语言→汇编语言→高级语言 用机器语言编写的程序由二进制代码组成,计算机可以直接执行。 将机器语言符号化,于是产生了汇编语言。 机器语言和汇编语言都是与机器有关的语言,通常称为低级语言。 其他与机器无关的程序设计语言,通常称为高级语言。 ①直观、自然、易于理解 ②易读,易写,易于交流、存档 ③一般都是独立于机器的,易于移植 翻译:等价的变换。 计算机只理解机器语言,可直接执行用机器语言编写的程序。 而用汇编语言和高级语言编写的程序,机器不能直接执行,必须将它们翻译成功能完全等价的机器语言程序才能执行。 将汇编语言程序翻译为机器语言程序的程序称为汇编程序(汇编器) 将高级语言程序翻译为低级语言程序的程序称为编译程序(编译器) 编写一个高级语言的编译程序的工作,通常称为对这个语言的实现。 BASIC是最简单的高级语言,它不是编译执行,即不需要将源程序编译成目标程序,而是对源程序进行解释(分析),直接计算出结果。 通常的做法是,将源程序转换成一种中间代码(这种中间代码与机

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档