大学计算机基础第6章

上传人:平*** 文档编号:47568938 上传时间:2018-07-03 格式:PPTX 页数:69 大小:2.90MB
返回 下载 相关 举报
大学计算机基础第6章_第1页
第1页 / 共69页
大学计算机基础第6章_第2页
第2页 / 共69页
大学计算机基础第6章_第3页
第3页 / 共69页
大学计算机基础第6章_第4页
第4页 / 共69页
大学计算机基础第6章_第5页
第5页 / 共69页
点击查看更多>>
资源描述

《大学计算机基础第6章》由会员分享,可在线阅读,更多相关《大学计算机基础第6章(69页珍藏版)》请在金锄头文库上搜索。

1、第六章 程序设计基础计算机程 序与程序 设计程序设计 语言 程序设计 过程及方 法 算法基础 主要内容计算机程序与程序设计计算机程序是指示计算机 如何去解决某个问题或完 成某项任务的一组指令。 【实例1】计算给定半径的圆面积。其计算步骤可以如下编排:(1)说明在计算过程中要用到 的常量和变量;(2)给定圆半径;(3)计算圆面积;(4)将结果输出到屏幕上。 概 念#define PI 3.1415926 /* 定义符号常量 */void main() /* 定义主函数 */ /* 开始 */float r, circle_area; /* 定义变量r和circle_area */scanf(“%

2、f“, /* 输入半径 */circle_area=PI*r*r; /* 计算圆面积 */printf(“circle_area=%f“, circle_area); /* 输出圆面积 */* 结束 */用C语言编写的求圆面积的程序计算机程序与程序设计#define PI 3.1415926 void main() float r, circle_area; scanf(“%f“, circle_area=PI*r*r; printf(“circle_area=%f“, circle_area); 程序的组成程序由两部分组成:说明部分和 执行部分。 说明部分说明部分主要包括程序名、参数 (常量

3、、变量)及其参数类型的 说明; 执行部分执行部分是程序的主体,完成具 体的计算和处理任务。 计算机程 序与程序 设计程序设计 语言 程序设计 过程及方 法 算法基础 主要内容程序设计语言 低级语言低级语言高级语言高级语言常用程序常用程序 设计语言设计语言编译与解释编译与解释高级程序设计高级程序设计 语言的特征语言的特征低级语言机器语言和汇编语言属于低级语言,是面向机器的语言。操作码域 操作数域 机器语言 机器语言被称为第一代程序设计语言。它是由二进制代码按照一定 规则组成、能被计算机直接识别和执行的指令集合。 每一条指令包括两部分: 操作码域操作码域中的数据表明要进行的操作;操作数域操作数域中

4、的数据为特定的 操作提供具体的数据或数据存放在内存中的地址。 低级语言【实例2】计算A=15+10 的机器语言程序10110000 00001111: 把15放入累加器A中 00101100 00001010: 10与累加器A的值相加, 结果仍放入A中 11110100: 结束,停机机器语言低级语言机器语言缺 点需要记住大量用二进制表示的 指令代码和代码的含义,难记 忆、难理解、难修改、易错。 用机器语言编写程序是很繁琐 的一件工作,只适合专业人员 使用;依赖于机器,可移植性 差,是面向机器的语言。优 点可以直接被计算机所识 别,不需要翻译,因此 占用计算机存储空间少 ,执行速度快。低级语言汇

5、编语言【实例3】计算A=15+10 的汇编语言程序MOV A,15:把15放入累加器A中 ADD A,10 :10与累加器A中的值相加, 结果仍然放在A中 HLT :结束,停机汇编语言或符号语言被称为第二代程序设计 语言。它是将机器语言符号化,即用英文助 记符来代替机器语言中的指令和数据, 比用 机器语言编写的程序简单,容易理解和掌 握。低级语言汇编语言缺 点仍然是面向机器的,可维护 性和可移植性差;要求编程 者熟悉计算机的硬件结构及 其原理,这对大量的非计算 机专业人员是很难做到的。 优 点克服了机器语言难读、难 理解等缺点,保持了机器 语言占用存储空间少,执 行速度快的优点。常用于 过程控

6、制等编程。用汇编语言编写的程序必须通过“汇编程序 ”的加工和翻译,才能生存能够被计算机识 别和处理的二进制代码程序。高级语言 v 高级语言被称为第三代程序设计语言,它与机器独立。 v 1954年,世界上诞生了第一种高级语言,即用于科学计算 的FORTRAN语言。机器 语言汇编 语言高级 语言高级语言 高级语言是面向 用户的语言,它 与自然语言(英 语)很接近,更 像是人类语言。它由语言本身规 定的专用符号, 英文单词,语法 规则和语句结构 组成,屏蔽了机 器的细节。程序员可以不与 计算机硬件打交 道,不必了解机 器的指令系统。它是与机器无关 的语言,因此程 序的可移植较 强。 高级语言v 它是

7、传统的程序设计语言,其目的在于高效地实现各种算法,需要 详细描述“怎样做”。常见的面向过程语言有FORTRAN、BASIC、 C、 PASCAL等。 v 用高级语言编程时的主要工作是围绕着设计解题过程来进行的,程 序设计基本上还是从语句一级开始,需要详细描述解题的过程和细 节。编程时,程序不仅要说明做什么,还要告诉计算机如何做,程 序需要详细描述解题的过程和细节。面向过程的语言高级语言v 面向对象语言是20世纪80年代推出的。它能够更好地描述客观事物 及其相互联系,能够比较直接地反映客观世界的本来面目。 v 面向对象语言将客观事物看作具有属性和行为的对象,通过抽象找 出同类对象的共同属性和行为

8、,形成类。通过类的继承与多态可以 很方便地实现代码重用,从而大大提高了程序的复用能力和程序开 发效率。面向对象的语言有C+、Java、Visual Basic等。面向对象的程序设计语言编译与解释 v 用高级语言编写的程序称为源程序,计算机不能直接识别和执行源程 序。在执行源程序前需要通过翻译成机器语言形式的目标程序,这种 “翻译”通常有两种方式,即编译方式和解释方式。 编译方式 编译方式是用“编译程序”将源程序翻译成与之等价的用机器语言 表示的目标程序。 如果编译过程中发现程序有错,计算机系统会给出相应的提示,这 时必须修改程序并重新编译,直到程序编译正确为止。 当程序编译正确后,将产生一个目

9、标程序。 编译与解释编编 译译 过过程词词法 分 析、语语法 分 析、 中间间 代码码 生 成、优优化 和目 标标代 码码生 成编译与解释 v 解释方式的翻译工作由解释器解释器来完成。 v 当运行使用解释语言编写的程序时,解 释器会读一条语句,然后对其进行分析 ,若没有错误,则将该语句翻译成一条 或多条可执行的机器语言指令,执行完 该指令后解释器再读入下一条语句并解 释成机器指令;若解释时发现错误,便 会立即停止,报错并提醒用户修改程 序。如此继续,整个过程不产生目标程 序。解释方式编译与解释v 编译把源程序的执行过程分为两个阶段:编译阶段编译阶段和运行阶段运行阶段, 即先把源程序全部翻译成目

10、标代码,然后再运行此目标代码,得 到执行结果。解释却把两个阶段合并成一个阶段,称为解释执行解释执行 阶段阶段,即按照源程序中语句的动态顺序,直接地逐句进行分析解 释,并立即执行,直至源程序结束。 v 经编译得到的目标程序,可以脱离编译程序独立运行;被解释的 程序却不能脱离解释环境执行。编译和解释的区别常用程序设计语言 FORTRAN语言 COBOL 语言 BASIC 语言 PASCAL 语言 C 语 言 C+ 语 言 LISP 语 言 PROLOG语言 JAVA 语言高级程序设计语言的特征 v 高级语言的数据类型一般分为基本数据类型和构造数据类型两大 类。 v 基本数据类型:整数类型、实数类型

11、、字符类型、逻辑类型、指针 类型等。v 构造数据类型:数组类型、枚举类型、记录类型(结构类型)、文 件等。 张东301500.80姓名字符型整型实型年龄工资数据类型高级程序设计语言的特征 v 把表示数值的名字称为标识符。 v 常量:以不变的数值形式出现的量,仅标识一个固定数据值的名字 称为常量标识符。 v 变量:程序执行过程中可能发生变化的对象用一个名字给以标识, 对该名字的处理,可以是对该名字标识的任何一个数据值进行处理 ,该名字称为变量。例如,计算的数据对象和计算结果对象在程序 中可以用变量表示。变量具有作用域,它取决于该变量的实际使用 范围。 v 标识符的构成规则:第一个字符必须是字母,

12、其他字符可以是字 母、数字或下划线等。常量与变量 高级程序设计语言的特征 v 程序中对数据进行处理是通过运算符实现的。 v 不同的程序设计语言提供的运算符种类不同,表示形式也可能不同 ,通常有如下几类运算: 算术运算符:加、减、乘、除、乘方等。 关系运算符:大于、大于等于、小于、小于等于、相等、不相等。 逻辑运算符:与、或、非等。 字符运算符:连接、比较、取子串等。 赋值运算符 :运算符高级程序设计语言的特征 v 表达式是程序中进行计算并取值的基本单位,它由常量、变量、函 数调用和运算符组成。通常表达式由若干个运算符把一些运算对象 连接在一起。 v 例如,已知圆半径r,求圆面积的C语句如下:其

13、中,PI*r*r就是一个表达式,r和s都是变量,PI是符号常量。是 赋值运算符。 表达式s=PI*r*r;高级程序设计语言的特征 v 语句是程序中具有独立含义的基本单位,通常分为说明性语句和执 行性语句。 说明性语句用来说明程序中被处理对象的标识符名及其类型,在某些语 言(如C语言)中还用于说明对象的存储类型,即对象的作用域。 执行性语句由程序设计语言所提供的语句组成,是可以执行的。语 句高级程序设计语言的特征 v 高级语言引入过程或函数的目的是把一个复杂程序分解为若干个功 能单一的子程序(过程或函数)。 v 当程序中要进行多次重复计算时,可以把重复部分定义成一个子程 序(过程或函数),当程序

14、中需要进行该计算时,就调用该子程序(过 程或函数)。过 程实 例高级程序设计语言的特征 有一个任务要将一个班的学生成绩按 平均成绩降序输出。算法描述: v 输入一个班学生的各门课程成绩; v 计算每个学生的平均成绩; v 将平均成绩按降序排列; v 输出排序结果。过 程按功能将该任务分解成4 个子任务,即 输入子任务; 计算平均成绩子任务 ; 降序排序子任务; 输出子任务。高级程序设计语言的特征 过 程按功能将该任务分解成4 个子任务,即 输入子任务; 计算平均成绩子任务 ; 降序排序子任务; 输出子任务。 一个子任务对应一个过程或函数。 按这种方法编写程序,便于多人合 作,降低了程序的复杂度

15、,程序结 构更加清晰。 在高级语言系统的函数库中,通常 为用户提供了大量的可直接调用标 准函数。例如,数学函数,字符串 处理函数,类型转换函数等。 高级程序设计语言的特征 v 对象的作用域是指变量使用的有效范围,它与定义对象的位置和过 程的结构有关。对象的作用域 例如在在C C语言程序中,定义在函数内的变量称为局部变量,它的使语言程序中,定义在函数内的变量称为局部变量,它的使 用范围只局限于定义它的函数体内,定义在函数外的变量称为用范围只局限于定义它的函数体内,定义在函数外的变量称为 全局变量,它的使用范围是从定义该变量的地方开始生效全局变量,它的使用范围是从定义该变量的地方开始生效。高级程序设计语言的特征 v 每一种高级语言都提供了各自的输入/输 出语句或输入/输出函数。通常,输入/输 出都有两种方式。 人机交互方式:例如从键盘上的输入, 通常是少量的数据输入。 文件方式:当数据量较大时,通常将数据 事先存放到一个数据文件中,需要时在程 序中打开该数据文件,从文件中读出数 据。输入/输出处理输入输出计算机程 序与程序 设计程序设计 语言 程序设计 过程及方 法 算法基础 主要内容程序设计过程及方法 程序设计基本过程 问题建模问题建模编译调试编译调试 设计设计编写代码编写代码程序设计过程及方法执执 行行 程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号