




已阅读5页,还剩75页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章 计算机软件系统(回顾) 4.1 软件概述 4.2 操作系统概述 4.3 操作系统的功能 4.4 常见操作系统 4.5 应用软件 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date1 第 5 章 计算机软件开发 (第8、9讲) 讲授:黄瑞兴黄瑞兴 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. *2 第 5 章 计算机软件开发 5.1 算法与数据结构 5.2 程序设计的基本概念 5.3 结构化程序设计 5.4 面向对象程序设计 5.5 软件工程 5.6 数据库系统概述 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date3 5.1 算法与数据结构 算法与数据结构是计算机程序的两个最 基本的概念。瑞士著名计算机科学家 尼可莱沃思在1976年曾提出算法与数 据结构二者的关系: 算法+数据结构=程序 准确地说,一个程序规定了某个数据结 构上的一个算法。 失失 算算 起床起床 穿衣穿衣 冲凉冲凉 吃饭吃饭 上课上课 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date4 5.1.1 算法的基本概念 v“算法(algorithms)”是什么? 韦氏新世界词典将“算法”定义为: 解决某种问题的任何专门的方法。 如公元前300年欧几里得在其著作 几何原本中关于求两个数的最大 公约数的辗转相除法就是著名的欧 几里德算法。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date5 欧几里德算法 v给定两个正整数m和n求它们的最大公 因子(即能同时整除m 和n 的最大正整 数)步骤: vv以以n n除除mm并令所得余数为并令所得余数为r r,r r必小于必小于n n ; vv若若r r= =0 0算法结束,输出结果算法结束,输出结果n n ,否则继,否则继 续续步骤步骤3 3; vv将将n n置换为置换为mm,r r置换为置换为n n并返回并返回步骤步骤1 1 。 vv欧几里德算法既表述了一个数的欧几里德算法既表述了一个数的求解求解 过程过程,同时又表述了一个,同时又表述了一个判定过程判定过程。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date6 汉诺塔问题 v每次只能移动一个盘子 v只能在三根柱子上移动,不能放在其他地方 v移动时必须始终保持大盘在下,小盘在上 vv当这当这6464个盘子个盘子全部全部移到移到第三根柱第三根柱子上,子上,世世 界末日界末日就要到了。就要到了。 vv汉诺塔问题只能用汉诺塔问题只能用递归方法递归方法而不能用其他方而不能用其他方 法来求解。法来求解。所谓递归所谓递归就是将一个就是将一个较大的问题较大的问题 归结归结为一个为一个或或多个比原问题多个比原问题简单,且在简单,且在结构结构 上上与原问题相同的与原问题相同的子问题子问题的的求解求解方法。方法。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date7 5.1.1 算法的基本概念 v著名计算机科学家克努特把算法的性质归纳 为 vv有穷性有穷性:算法必须在:算法必须在执行有限步执行有限步之后结束。之后结束。 即必须在即必须在有限时间有限时间内完成。内完成。 vv确定性确定性:算法中的:算法中的每个步骤每个步骤都必须有都必须有明确明确的的 定义,定义,不允许存在多义性不允许存在多义性和和模棱两可。模棱两可。 vv能行性能行性:算法中描述的每步操作都应是可执:算法中描述的每步操作都应是可执 行的。例如,当行的。例如,当B B0 0时时A A/ /B B 就无法执行,就无法执行,不不 符合能行性符合能行性的要求。的要求。 vv输入输入:一个算法必须有:一个算法必须有0 0个个( (自动生成初始数自动生成初始数 据据) )或多个输入。或多个输入。 vv输出输出:一个算法必须产生一个或多个输出:一个算法必须产生一个或多个输出 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date8 v自然语言是人们日常所用的语言,如 英语、汉语等 优点优点:自然语言所描述的算法通:自然语言所描述的算法通 俗易懂、灵活自由。俗易懂、灵活自由。 缺点缺点:歧义性歧义性,容易导致算法,容易导致算法 执行的不确定性;执行的不确定性;串行性串行性,一个算,一个算 法中循环和分支较多时就很难清晰地法中循环和分支较多时就很难清晰地 表示出来;表示出来;不便转换不便转换成用计算机程成用计算机程 序设计语言序设计语言表示表示。 5.1.2 算法的表示-自然语言 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date9 v流程图是采用一些的图框符号来描述 算法的逻辑结构,每个图框符号表示 不同性质的操作。ANSI在上世纪60年 代颁布流程图的标准,规定用来表示 程序中各种操作的流程图符号。 5.1.2 算法的表示-流程图 起止框起止框 输入输入/ / 输出框输出框 判断框判断框 处理框处理框 注释框注释框 连连 接接 线线 连连 接接 点点 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date10 5.1.2 算法的表示 v例3.2 求5! 步骤1: 令p1 步骤2: 令i2 步骤3: 使pXi,成绩依然 存入p中,可表示为 ppxi 步骤4: 使i的值加1,可表 示为ii1 步骤5: 如果i5,则返回步 骤3的位置,从步骤3开 始再次执行本算法。 如果i5,则算法结束。 v流程图 开始开始 i5 i5 p 1 p 1 i2 i2 p p x ip p x i i ii i1 1 结束结束 F F T T Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date11 v伪代码是一种非正式的语言,它是 用介于自然语言和计算机语言之间 的文字和符号来描述算法 比真正的程序代码比真正的程序代码更更简明简明,更,更 贴近自然语言贴近自然语言 书写方便、格式紧凑、易于理书写方便、格式紧凑、易于理 解,便于转化为计算机语言算法解,便于转化为计算机语言算法 (即程序)(即程序) 5.1.2 算法的表示伪代码 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date12 5.1.2 算法的表示 v用伪代码表示例3.2 求5!的算法 Begin 置 p的初值为1 置 i 的初值为2 while i 5 p p x i i i + 1 endwhile 打印p的值 End Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date13 5.1.3 数据结构的基本概念 v数据:是描述客观事物的数字、字符 及所有能输入到计算机中并被计算机 程序处理的符号的集合。 v数据元素:组成数据的基本单位称为 数据元素。通常将数据元素作为一个 整体进行处理。数据元素由若干个数 据项组成,称数据元素为记录。 数据项是数据的不可分割的最小单位。 最简单的数据元素仅含有一个数据项 。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date14 5.1.3 数据结构的基本概念 v数据结构:是指数据之间的相互关系 ,即数据的组织形式。 v数据结构的研究内容: 程序设计中计算机所操作的对象及相互 间的关系和运算,即数据的逻辑结构、 存储结构以及数据结构的运算。 v数据的逻辑结构是指数据元素之间的 逻辑关系。逻辑结构有:线性结构、树 形结构和图状结构(或称网状结构)。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date15 5.1.3 数据结构的基本概念 v数据的存储结构是指数据在存储器中 的存储方式。 顺序存储结构顺序存储结构借助元素在存储器借助元素在存储器 中的中的相对位置相对位置来表示数据元素的来表示数据元素的逻辑逻辑 关系关系 链式存储结构链式存储结构借助借助指针指针来表示数来表示数 据元素之间的据元素之间的逻辑关系逻辑关系,通常在数据,通常在数据 元素上增加一个或多个指针类型的属元素上增加一个或多个指针类型的属 性来实现这种表示方式。性来实现这种表示方式。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date16 数据结构的基本运算(操作) 建立数据结构 撤消数据结构 插入数据元素。在一个给定的数据结 构中,在指定位置上增添一个新的元 素。 删除数据元素。对一个给定的数据结 构,删除某个指定节点。 更新数据元素。在一个给定的数据结 构中,改变某个元素的值,它等于插 入和删除两个操作的组合。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date17 数据结构的基本运算(操作) 查找数据元素。在一个给定的数据结 构中,找出满足指定条件的元素。 排序。对给定的数据结构中的所有的 元素按照一定的条件将它们重新排列顺 序 遍历。在一个给定的数据结构中,从 第一个结点开始,依次访问各个结点。 每个结点只能被访问一次。 判定某个数据结构是否为空或是否已 达到最大允许的容量。 统计数据元素的个数。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date18 5.1.3 数据结构的基本概念 v学习数据结构的目的 可简化算法可简化算法 节省空间节省空间 提高效率提高效率 程序设计中程序设计中选择适当选择适当的的数据结构数据结构 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date19 5.1.4 线性表 v定义:线性表的逻辑结构是n个数据元素 的有限序列:(a 1 , a 2 , a 3 , , a n ) v逻辑结构特征:数据元素之间呈线性关 系 第第1 1个:无前驱,有个:无前驱,有1 1个后继;个后继; 最后一个最后一个:有:有1 1个前驱,无后继;个前驱,无后继; 其它其它:有:有1 1个前驱,有个前驱,有1 1个后继。个后继。 vv存储结构存储结构,一类是顺序,一类是顺序 ( (静态存储结构静态存储结构) ) ,另一类是链式,另一类是链式 ( (动态存储结构动态存储结构) ) 除书上所列举的除书上所列举的2626个英个英 文字母、文字母、0-90-9数字字符组数字字符组 成线性表。成线性表。 还能举出其他的线性表还能举出其他的线性表 吗?吗? Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date20 5.1.4 线性表 v顺序存储结构线性表的插入、删除过 程 1 2 3 4 5 6 7 8 9 1515 1818 2222 2525 2626 2929 1111 1212 插入插入2020 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date21 5.1.4 线性表 v顺序存储结构线性表的插入、删除过 程 1 2 3 4 5 6 7 8 9 1515 1818 2222 2525 2626 2929 1111 1212 插入插入2020 2020 删除删除1212Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date22 5.1.4 线性表 v顺序存储结构线性表的插入、删除过 程 1 2 3 4 5 6 7 8 9 1111 删除删除12121515 1818 2222 2525 2626 2929 2020 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date23 5.1.4 线性表 v链式存储线性表的插入、删除 abdef c abdef 插入插入c c 删除删除d d Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date24 5.1.5 栈与队列 v栈是限定仅在表尾进行插入和删 除操作的线性表。因此,对栈来说 ,表尾端有其特殊的含义,称为栈 顶,相应的表头端称为栈底。不含 元素的空表称为空栈 v栈又称后进先出(Last In First Out)的线性表,简称LIFO。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date25 5.1.5 栈与队列 v栈的示意图 栈底栈底 栈顶栈顶 进栈进栈 出栈出栈 a a1 1 a a2 2 a a n-1n-1 a an n Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date26 5.1.5 栈与队列 v栈顶指针和数据元素间的关系 toptop= =0 0 toptop= =1 1 toptop= =2 2 toptop= =3 3 toptop= =4 4 toptop= =5 5 A A B B C C D D E E Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date27 5.1.5 栈与队列 v栈的链式存储结构链栈示意图 栈顶指针栈顶指针 栈顶栈顶 栈底栈底 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date28 5.1.5 栈与队列 v队列是一种先进先出(First In First Out)的线性表,简称为FIFO。 v队列只允许在表的一端进行插入操作 ,而在表的另一端进行删除操作。 v允许插入元素的表端称为队尾,允许 删除元素的表端称为队头。 v类似于日常生活中的排队排队,删除元素,删除元素 从队头进行、插入元素从队尾进行,从队头进行、插入元素从队尾进行, 最早进入队列的元素最早离开。最早进入队列的元素最早离开。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date29 5.1.5 栈与队列 v队列示意图 a a1 1 a a2 2 a an n 队头队头队尾队尾 入队列入队列 出队列出队列 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date30 5.1.6 树与图 v树:非线性结构(有树和二叉树)。非空 树有且仅有一个根结点。结点拥有子结点的 个数称结点的度。 A A B B F F L L K K E E D D GG H H I I J J MM C C 层次层次 1 1 2 2 3 3 4 4 ABCABC的度的度 是多少?是多少? Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date31 5.1.6 树与图 v图:数据元素之间的关系可以是任意 的 1 1 3 3 2 2 1 1 4 4 5 5 2 2 6 6 有向图有向图无向图无向图 4 4 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date32 5.1.7 算法的设计 v算法的设计目标 vv正确性正确性:能无误地处理合法输入数据:能无误地处理合法输入数据 ,得到满足要求的结果。,得到满足要求的结果。 vv可读性可读性:便于人们阅读和交流。:便于人们阅读和交流。 vv健壮性健壮性:对非法输入的数据能作出适:对非法输入的数据能作出适 当的反应和处理。当的反应和处理。 vv效率效率与与存储量存储量:衡量算法的:衡量算法的执行时间执行时间 及所需的最大存储及所需的最大存储空间空间。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date33 5.1.7 算法的设计 v算法设计的基本策略思想 vv分割求解法分割求解法:把一个大问题划分为原问:把一个大问题划分为原问 题的较小子问题,先求出各子问题的解题的较小子问题,先求出各子问题的解 答,然后把各子问题的解答合并成整个答,然后把各子问题的解答合并成整个 问题的解。问题的解。 vv动态规划法动态规划法:对所有的子问题都进行解:对所有的子问题都进行解 答,每个子问题的解决依赖于一系列子答,每个子问题的解决依赖于一系列子 问题的结果。如何找出后面的子问题,问题的结果。如何找出后面的子问题, 要依赖于前面一系列子问题的递推关系要依赖于前面一系列子问题的递推关系 式,这就是动态规划策略的核心。式,这就是动态规划策略的核心。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date34 5.1.7 算法的设计 v算法设计的基本策略思想 vv子目标法子目标法( (倒推法倒推法) ):从某个已知的特定:从某个已知的特定 解出发,反过来求这个解与已知条件之解出发,反过来求这个解与已知条件之 间存在的关系,以得到一般解的方法间存在的关系,以得到一般解的方法 vv图的图的搜索法搜索法:把问题的求解过程用图或:把问题的求解过程用图或 树这种结构来描述。树这种结构来描述。 vv回溯法回溯法:先试一试某一操作,如果以后:先试一试某一操作,如果以后 发现这个操作不适合,则允许退回去,发现这个操作不适合,则允许退回去, 另选一个操作来进行。本质是一种搜索另选一个操作来进行。本质是一种搜索 算法。算法。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date35 习题 (p69) 1. 什么是算法,算法应具备哪些特性,为什 么? (p70) 3. 几种常用的算法表示方法是什么,各有什 么特点? 10. 试比较线性表、栈和队列三种数据结构。 14. 好的算法应满足哪些主要的设计目标? Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date36 5.2 程序设计的基本概念 v什么是程序设计Programming? v程序设计是给出解决特定问题程序的 过程,是指设计、编制、调试程序的 方法和过程。是软件构造活动中的重 要组成部分。程序设计往往以某种程 序设计语言为工具,给出这种语言下 的程序。 v程序设计过程应当包括分析、设计、 编码、测试、排错等不同阶段。专业 的程序设计人员常被称为程序员。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date37 5.2 程序设计的基本概念 5.2.1 程序设计语言的分类 vv机器语言机器语言( (1 1GL)GL) 优点:可以被计算机直接理解优点:可以被计算机直接理解 和执行,执行速度快,且占用内和执行,执行速度快,且占用内 存少。存少。 缺点:通用性差、程序可读性缺点:通用性差、程序可读性 很差、不易于调试和维护。很差、不易于调试和维护。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date38 5.2.1 程序设计语言的分类 v汇编语言(2GL) 用助记符表示机器指令用助记符表示机器指令操作码操作码和和地址码地址码 。助记符助记符是一些有意义的是一些有意义的英文单词英文单词的的 缩写缩写和和符号符号。如用。如用ADDADD表示加法表示加法 additionaddition、用、用MOVMOV表示数据的传送表示数据的传送 movemove等等 优点优点:可用汇编语言写出:可用汇编语言写出语句少语句少 、质量高质量高、执行、执行速度快速度快的程序的程序 缺点缺点:汇编语言仍是一种面向机:汇编语言仍是一种面向机 器的语言,通用性差。器的语言,通用性差。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date39 5.2.1 程序设计语言的分类 v高级语言(3GL) 按照一定的按照一定的“ “语法规则语法规则” ”构建程序。用构建程序。用英英 语单词语单词表示的表示的关键字关键字和和数学符号数学符号组成组成 。简化开发应用程序的过程。高级语简化开发应用程序的过程。高级语 言是面向算法过程的语言。言是面向算法过程的语言。即即不但不但要要 告诉计算机告诉计算机“ “做什么做什么” ”,还要还要告诉计算告诉计算 机机“ “怎么做怎么做” ” 优点优点:程序表达直观,可读性好:程序表达直观,可读性好 ,与具体机器无关,便于移植,通用,与具体机器无关,便于移植,通用 性好性好 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date40 高级语言与翻译系统 v通常把用高级语言编写的程序称为源程 序,把用二进制代码表示的程序称为机 器代码程序或者目标程序. v计算机只能识别和执行由二进制代码组 成的机器语言,因此源程序必须经过语 言处理程序 翻译成目标程序才能被计 算机执行. v具有翻译功能的语言处理程序:编译程 序(又称编译器)和解释程序(又称解释器 ) Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date41 第四代语言4GL v是一种非过程化的语言。只需说明所要 完成的加工和条件,给出输入数据并指 明输出形式,就能得到所需结果。 优点优点:简单易学,编程省时省力,:简单易学,编程省时省力, 无需很多程序设计知识就能开发应用无需很多程序设计知识就能开发应用 程序程序 应用应用:目前流行的:目前流行的关系型数据库管关系型数据库管 理系统理系统结构化查询语言结构化查询语言SQLSQL,具有数,具有数 据的查询、定义、操纵和控制功能。据的查询、定义、操纵和控制功能。 如如OracleOracle、SybaseSybase、MS SQL MS SQL ServerServer、AccessAccess等等 5 5. .2 2. .1 1 程序设程序设 计语言的分类计语言的分类 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date42 非过程化语言 v高级语言(过程化语言)解决问题时,必 须详细描述解决问题的每一步,既要解 决“做什么”,又要解决“怎么做”。 v非过程化语言不必描述繁琐的解决问题 过程,只需告诉计算机“做什么“而不必 指明“怎么做“ v特点:只指定哪些数据被操纵,至于对 这些数据要执行哪些操作,以及这些操 作是如何执行的,则未被指定。 5.2.1 5.2.1 程序设计程序设计 语言的分类语言的分类 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Copyright 2004-2011 Aspose Pty Ltd. Date43 5.2.1 程序设计语言的分类 v第五代语言5GL 也是非过程化的语言,它们提供了可视 化的图形界面来生成源代码。通常第 五代语言使用第三代语言或第四代语 言的编译程序来转换得到相应的机器 语言程序。有些面向对象的开发工具 和网页开发工具,如Visual Basic、 Visual C+、Java等就属于第五代语 言。 Evaluation only.Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile .Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd.Co
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理学:请护工的三大重要理由
- 江西省吉安永新县联考2025年初三下五校联考英语试题含答案
- 天津市津南区2025年初三高中数学试题竞赛模拟(二)数学试题含解析
- 团风县2025年五下数学期末质量检测试题含答案
- 江西省鹰潭市达标名校2025年初三5月检测试题(三)英语试题含答案
- 上海师范大学《文化遗产学理论教学》2023-2024学年第一学期期末试卷
- 台州科技职业学院《文学概论(2)》2023-2024学年第二学期期末试卷
- 辽宁省丹东市第六中学2025届初三下学期中考考前质量检测试题三(5月模拟)物理试题含解析
- 江西枫林涉外经贸职业学院《俄语》2023-2024学年第一学期期末试卷
- 长沙职业技术学院《景观快题训练》2023-2024学年第二学期期末试卷
- 2025届上海市浦东新区高三二模英语试卷(含答案)
- 开曼群岛公司法2024版中文译本(含2024年修订主要内容)
- 【MOOC】航空燃气涡轮发动机结构设计-北京航空航天大学 中国大学慕课MOOC答案
- 工程变更通知单ECN模板-20220213
- 微型数控铣床结构设计
- 捷达离合器设计毕业设计)
- 迈瑞-呼吸模式的应用及参数设置-V1.0-201603
- 酸洗磷化线材项目建议书范文
- 装修行业资源整合主材合作协议
- 储油罐施工专业技术方案
- (完整版)冲压模具设计毕业设计.doc
评论
0/150
提交评论