第6章 程序设计与算法分析.ppt

  1. 1、本文档共124页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 程序设计与算法分析 本章要点 ◆初步了解程序设计的基础知识 ◆掌握结构化程序设计和面向对象程序设计的基本方法 ◆掌握数据结构中的基本数据类型及其实现 ◆掌握程序设计算法的基本思想及几种经典的算法 ◆了解编译原理的基本知识 6.1.1 程序的概念 程序就是能够实现特定功能的一组指令序列的集合。 程序设计是程序员编写一系列可存储的指令以指示计算机完成某些工作的过程。这些指令用程序设计语言写成。 程序设计语言是一组专门设计的用来生成一系列可被计算机处理和执行的指令的符号集合。 程序设计人员用程序设计语言写成的指令称作代码。 6.1.2 计算机程序设计语言 分类: 低级语言、高级语言。 1)低级语言包括两种类型:机器语言和汇编语言。 2) 机器语言 机器语言面向机器,可以由CPU直接识别和执行。 不同的机器能够识别的机器语言是不相同的。 机器语言指令都是用一串0、1构成的二进制位串来表示的。 指令系统是机器提供的机器指令的集合。 用二进制编码表示的指令,称为机器指令,或称为机器码。 用机器指令编写的程序称为机器语言程序,或称为目标程序,这是计算机能够直接执行的程序。 机器语言难以阅读和理解,编写和修改都比较困难,而且通用性较差。 汇编语言 汇编语言也称符号语言。 指令助记符是指令英文名称的缩写,容易记忆。 所谓汇编语言,就是采用字母、数字和符号来代替由一个个0和1构成的指令操作码、寄存器、数据和存储地址等,并在程序中用它们代替二进制编码数,这样编写出来的程序就称为符号语言程序或汇编语言程序。 大多数情况下,一条汇编指令直接对应一条机器指令,少数对应几条机器指令。 汇编语言具有一个本质上与机器语言一一对应的指令系统。汇编语言的实质和机器语言是相同的。 低级语言的特点 ① 都与特定的计算机硬件系统紧密相关,来自于特定系统的指令系统,可移植性差; ② 专业知识要求高,要求对计算机硬件的结构和工作原理非常熟悉; ③ 每条指令的功能很单一,程序员编制源程序时指令比较繁琐; ④ 由于直接针对特定硬件编程,所以,最终的可执行程序代码精炼,而且执行效率非常高。 两者主要的区别在于:机器语言无需翻译或编译,CPU能够直接识别和执行。而汇编语言必须经过汇编才能得到目标程序。 汇编 虽然汇编语言比机器语言容易阅读理解和便于检查,所以仍然需要一种特殊的程序,该程序能够将用汇编语言编写的程序“翻译”成CPU能够识别的机器语言。 实现这种翻译功能的特殊程序称为汇编语言翻译程序、汇编程序或汇编器。程序员手工编写的程序统称为源程序,用汇编语言编写的源程序称为汇编语言源程序,汇编程序将源程序翻译得到的机器语言程序称为目标程序,翻译的过程称为汇编。 反汇编程序用于将目标代码程序转换成相应的汇编语言源程序,这一过程称为反汇编。反汇编主要用于识别源程序代码,常用的调试工具程序DEBUG就提供了反汇编功能。 高级语言的产生 一个问题:如何解决程序的可移植性,即:程序员编写的源程序如何可以从一台计算机很容易地转到另一台计算机上工作。为了解决这些问题,人们引入了高级语言来编写程序。 所谓高级语言是一种由表达各种意义的“词”和“公式”,按照一定的“语法规则”来编写程序的语言,又称为程序设计语言或算法语言。 高级语言之所以“高级”,就是因为它使程序员可以完全不用与计算机的硬件打交道,可以不必了解机器的指令系统。 程序员可以把硬件上复杂的概念比如存储空间抽象成一个所谓的变量之类的概念,因而程序员就可以绕开硬件问题而集中精力解决问题本身,编程效率大大提高。 由于高级语言与具体机器无关,那么在一种机器上运行的高级语言程序可以几乎不经改动地移植到另一种机器上运行,大大提高了程序的通用性。 此外,由于高级语言与自然语言(尤其是英语)很相似,因此易学、易懂,也易编写。 高级语言的常见类型 目前已经有许多高级语言在流行,并且新的类型还在不断出现和升级。 用户在实际应用中进行程序设计时,可根据情况选择适合的高级语言。 (1) BASIC语言 (2) FORTRAN语言 (3) COBOL语言 (4) PASCAL语言 (5) C语言 (6) C++语言 (7) 其他高级语言 基于视窗类操作系统的,如Visual Basic、Visual C++、Delphi、Power Builder、Java等等。 高级语言的优点是语句的功能强,源程序比较短,容易学习,使用方便,通用性较强,便于推广和交流。 其缺点是编译程序比汇编程序复杂,而且编译出来的目标程序往往效率不高,目标程序的长度比有经验的程序员所编的同样功能的汇编语言程序要长—半以上,运行时间也要长一些。 因此,在很多对时间要求比较高的系统,如某些实时控制系统或者大型计算机控制系统中,低级语言,主要是汇编语言,仍然得到了一

文档评论(0)

精品文库 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档