第一章计算机与设计.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计 牟永敏 北京信息工程学院 计算机系 清华大学出版社 第一章 计算机与程序设计 牟永敏 北京信息工程学院 计算机系 概要:本章介绍计算机和程序设计的基本知识,主要内容包括: 1. 计算机的基本结构 2. 程序设计语言 3. 面向过程程序设计 4. 面向对象程序设计 通过对这些内容的学习,使读者对计算机和程序设计有一个初步的了解,为后面各章的学习奠定基础。 1.计算机的基本结构(1) 计算机的基本结构主要是由存储器、运算器、控制器、输入设备和输出设备等五个部件组成。 其中: 存储器:是用来存储数据。大致分为内部存储器(内存)和外部存储器(硬盘、软盘等) 运算器:是用来完成各种算术运算和逻辑运算。 控制器:用来控制计算机的各个部件协调工作。 输入设备和输出设备:是用来为数据的输入和输出服务的。 1.计算机的基本结构(2) 计算机的工作过程 (以汇编为例): 第一步,用输入设备把事先编制好的解题步骤(即程序)和原始数据输入到存储器指定编号的地方(内存单元)存放起来。 第二步,命令计算机从第一条指令开始执行程序,则计算机在程序控制下自动完成解题的全过程。 返回 2.程序设计语言 (1) 60年代,冯·诺依曼提出了程序存储原理,计算机走向了现代化。 目前,程序设计语言的发展已经经历了四代,第五代语言尚处于萌芽状态。下面简单介绍一下各代语言的基本特点。 2.程序设计语言 (2) 第一代语言 第一代程序设计语言是机器语言,它是计算机所特有的,不同计算机有不同的机器语言。 第二代语言 汇编语言,也称为符号语言。用含义较鲜明的符号,代替机器语言中的二进制编码,因此看起来较直观,不易出错。 2.程序设计语言 (3) 第三代语言 称为算法语言,算法语言的基本组成成分是各种语句(如结构化程序设计),比用机器语言或汇编语言编写程序更加方便、简单和直观。 第四代语言 实质上是可以快速开发应用软件的各种高生产率的软件工具的统称。如VC++、Delphi等。 2.程序设计语言 (4) 第五代语言 多数人认为,第五代语言将是智能化的语言。PROLOG语言可能是第五代语言最著名的雏形。 返回 3.面向过程程序设计(1) 使用传统程序设计语言进行程序设计时,必须详细准确地描述解题过程 。因为程序设计工作主要围绕设计解题过程来进行,所以传统的程序设计方法称为面向过程的程序设计。 人们在开发软件的长期实践过程中,总结出一些设计原理并研究出一些系统化的技术方法,用于面向过程程序设计,能够提高开发效率,增加系统的可理解性和可维护性。这些原理和技术方法,在进行面向对象程序设计时也有借鉴意义。 3.面向过程程序设计(2) 基本设计原理与技术---模块化 模块是数据说明、可执行的语句等程序元素的集合,它是单独命名的而且可以通过名字来访问,所谓模块化,就是把一个程序划分成若干个模块,每个模块完成一个子功能,把这些模块组装成一个整体,可以完成指定的功能 。如:函数。 请注意:在把程序划分成模块的时候,模块规模应该适当 。 3.面向过程程序设计(3) 基本设计原理与技术---抽象 人类在认识复杂现象的过程中使用的最强有力的思维工具是抽象。人们在实践中认识到,在现实世界中一定事物、状态或过程之间总存在着某些相似的方面(共性)。把这些相似的方面集中和概括起来,暂时忽略它们之间的差异,这就是抽象。 如:各式各样的人=人类。抽象是对事物共性的高度概括。 当我们考虑对任何问题的模块化解法时,可以提出许多抽象的层次。 3.面向过程程序设计(4) 基本设计原理与技术---信息隐藏和局部化 信息隐藏原理指出,在设计和确定模块时,应该使得一个模块内包含的信息(数据和过程)对于不需要这些信息的模块来说,是不可访问的(又称不可见的)。 局部化,是指把一些关系密切的程序元素物理地放得彼此靠近,处于同一局部区城内。 3.面向过程程序设计(5) 基本设计原理与技术---模块独立 模块独立原理是模块化、抽象、信息隐藏和局部化原理的直接结果和进一步发展。应该这样设计程序结构,使得每个模块完成一个相对独立的特定子功能,并且和其他模块之间的关系尽可能简单。

文档评论(0)

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

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

1亿VIP精品文档

相关文档