第3章计算机软件ppt课件.ppt

上传人:本田雅阁 文档编号:2603687 上传时间:2019-04-16 格式:PPT 页数:115 大小:2.63MB
返回 下载 相关 举报
第3章计算机软件ppt课件.ppt_第1页
第1页 / 共115页
第3章计算机软件ppt课件.ppt_第2页
第2页 / 共115页
第3章计算机软件ppt课件.ppt_第3页
第3页 / 共115页
亲,该文档总共115页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第3章计算机软件ppt课件.ppt》由会员分享,可在线阅读,更多相关《第3章计算机软件ppt课件.ppt(115页珍藏版)》请在三一文库上搜索。

1、第3章 计算机软件,3.1 概述 3.2 操作系统 3.3 算法与程序设计语言,教学目的与要求,熟悉计算机软件的含义和特性,了解计算机软件的知识产权保护,了解系统软件和应用软件的含义、类别、功能及主要特征,了解商品软件、共享软件及自由软件的概念 结合Windows操作系统,了解操作系统的作用和功能,理解多任务处理、存储管理、文件管理的基本原理 熟悉算法的含义及算法性质,掌握程序设计语言的含义及分类,了解常用程序设计语言的特点 ,了解程序设计语言处理系统的作用与组成,3.1 软件概述,1. 什么是计算机软件 2. 计算机软件的特性 3. 计算机软件的分类,3.1 什么是计算机软件,计算机软件的定

2、义,ISO的定义包含与数据处理系统操作有关的程序、规程、规则以及相关文档的智力创作。 可以理解为: 能指示(指挥)计算机完成特定任务的、以电子格式存储的程序、数据和相关的文档。,计算机系统=硬件+软件,计算机系统是由硬件和软件组成的,两者缺一不可!,软件、硬件和用户的关系,硬件的能力非常有限,只是速度极高而已 没有软件,硬件几乎什么任务也完成不了,计算机通过软件才能进行信息处理,不同的软件,完成不同的任务,同一软件处理不同的数据,完成不同的任务,什么是程序?,程序是告诉计算机做什么和如何做的一组指令(语句),这些指令(语句)都是计算机能够理解并能够执行的一些命令 程序的特性: 用于完成某一确定

3、的信息处理任务 使用某种计算机语言描述如何完成该任务 预先存储在计算机中,启动运行后才能完成任务,程序与数据的关系,程序所处理的对象和处理后得到的结果统称为数据(分别称为输入数据和输出数据) 程序必须处理合理的输入数据,否则不会产生有意义的输出 程序和数据具有相对性,程序与软件是什么关系?,软件既包含程序、也包含与程序相关的数据和文档: 程序是软件的主体 数据指的是程序运行过程中处理的对象和必须使用的一些参数(如三角函数表、英汉词典等) 文档指的是与程序开发、维护及操作有关的一些资料(如设计报告、维护手册和使用指南等) 软件往往指的是设计比较成熟、功能比较完善、具有某种使用价值、且有一定规模的

4、程序 “软件” 强调的是产品、工程、产业或学科等宏观方面的含义,“程序”更侧重技术层面的含义 软件和程序本质上相同,在不会发生混淆的场合,软件和程序两个名称经常混用,并不严格加以区分,软件由程序、_和文档三部分组成。,A、指令 B、工具 C、语言处理程序 D、数据,题解,存储在硬盘或光盘上的数字作品一定是软件?,2. 计算机软件的特性,计算机软件有哪些特性? (1),1. 不可见性(是无形的,不能被人们直接观察、欣赏和评价) 2. 适用性(可以适应一类应用问题的需要 ) 3. 依附性(依附于特定的硬件、网络和其他软件 ) 4. 复杂性(规模越来越大,开发人员越来越多,开发成本也越来越高) ,例

5、如:,软件的复杂性 举例,程序规模:Windows XP源程序约有5000万行 人员队伍:Vista及新版Office 2007两个团队开发设计成员总共9000余人 资金投入:微软为Vista投入90亿美元,包括Vista未来的配套及合作伙伴的投入,预计在180亿美元以上,如果加上新版Office的成本,投入资金在240亿270亿美元之间 开发周期:Vista的开发经历6年,发布时间一拖再拖,计算机软件有哪些特性? (2),5. 无磨损性(功能和性能一般不会发生变化 ) 6. 易复制性(可以非常容易且毫无失真地进行复制 ) 7. 不断演变性(软件的生命周期 ) ,例如: 1989年Word 1

6、.0 1997年推出Word 97 2000年推出Office 2000 2003年 Office 2003 2007年Office 2007 2010年Office 2010,8. 有限责任(有限保证) 9. 脆弱性(黑客攻击、病毒入侵、信息盗用),Win操作系统 演变过程,计算机软件与知识产权,软件是智力活动的成果,受到知识产权(版权)法的保护 版权授予软件作者(版权所有者)享有下列权利: 拷贝、发布、修改、署名、出售、 保护知识产权的目的:确保脑力劳动受到奖励并鼓励发明创造,保护知识产权就是保护脑力劳动人员,使他们发挥创造能力,社会也会从他们的成果中受益 购买一个软件,用户仅仅得到了该软

7、件的使用权,并没有获得它的版权 随意进行软件拷贝和分发是一种违法行为,3. 计算机软件的分类,从软件知识产权对软件进行分类,商品软件 共享软件(shareware) 具有版权,可免费试用一段时间,允许拷贝和散发(但不可修改),过了试用期若还想继续使用,就得交一笔注册费,成为注册用户。 自由软件 (freeware)(开放源代码软件) 用户可共享,并允许随意拷贝、修改其源代码,允许销售和自由传播。但是,对软件源代码的任何修改都必须向所有用户公开,还必须允许此后的用户享有进一步拷贝和修改的自由。 自由软件的重大意义,下列_属于“自由软件”。,A、Windows XP B、Linux C、Word

8、D、Photoshop,题解,计算机软件可以分为商品软件、共享软件和自由软件等类型。在下列相关叙述中,错误的是_。,A.通常用户需要付费才能得到商品软件的使用权,但这类软件的升级总是免费的 B.共享软件通常是一种“买前免费试用“的具有版权的软件 C.自由软件的原则是用户可共享,并允许拷贝和自由传播 D.软件许可证是一种法律合同,它确定了用户对软件的使用权限,题解,从用途对计算机软件分类,系统软件 不是为了解决某种具体应用,而是为了: 给用户使用计算机提供方便 给应用软件的开发与运行提供支持 使计算机有效、安全、可靠地运行,应用软件 专门用于帮助最终用户解决各种具体应用问题的软件 分类(按开发方

9、式): 定制应用软件 通用应用软件 几乎所有领域、所有人都需要使用 设计精巧,易学易用 商品化,价格较低,通用应用软件的类别与功能,什么是系统软件?,举例: 基本输入/输出系统(BIOS) 操作系统(如Windows、Unix、Linux等) 程序开发工具与环境(如C语言编译器等) 数据库管理系统(DBMS) 实用程序(Utility,如磁盘清理程序、备份程序、杀毒软件、防火墙等),最重要的系统软件有哪些?,操作系统(OS) 包括各种实用程序(如磁盘清理程序、备份程序、杀毒软件等) 功能上也包含BIOS在内 程序设计语言处理系统 编译器 解释器 汇编程序(汇编器) 开发工具与平台 数据库管理系

10、统(DBMS),以下软件中属于应用软件的是? A. Word B. Windows XP C. 人事管理系统 D. Linux E. Visual FoxPro F. Media Player,题解,下列软件中全部属于通用应用软件的是_。,A、WPS,Windows,Word B、PowerPoint,SPSS,UNIX C、Linux,Photoshop,FORTRAN D、PowerPoint,Excel,Word,题解,人们通常将计算机软件划分为系统软件和应用软件。下列软件中,不属于应用软件类型的是_。,A.AutoCAD B.MSN C.Oracle D.Windows Media P

11、layer,题解,下列有关PC机软件的叙述中,错误的是 _。,A.任何软件都具有版权,因此均不能随意复制和使用 B.软件由程序及相关的数据和文档组成 C.数据库管理系统属于系统软件 D.Outlook Express属于应用软件,题解,在下列常用应用软件中,不能对编辑的文档设置密码的是_。,AMicrosoft Word BMicrosoft Excel CMicrosoft PowerPoint DMicrosoft FrontPage,题解操作实践,在下列常用的PC机软件中,编辑的文档(内容)能直接保存为图片类型(例如JPEG文件类型)的是_。,A.Microsoft Word B.Mic

12、rosoft Excel C.Microsoft PowerPoint D.Microsoft FrontPage,题解操作实践,3.2 操作系统,3.2.1 概述 3.2.2 多任务处理与处理器管理 3.2.3 存储管理 3.2.4 文件管理 3.2.5 设备管理 3.2.6 常用操作系统介绍,3.2.1 什么是操作系统,什么是操作系统(OS)?,OS屏蔽了计算机中几乎所有物理设备的技术细节,为使用、开发和运行其他软件提供了一个高效、可靠的平台 OS非常庞大和复杂,它由许多程序模块组成,没有安装任何软件的计算机称为裸机, 裸机是无法使用的 操作系统是最重要的一种系统软件,几乎所有计算机都要安

13、装OS,为什么需要操作系统?,控制基本的输入/输出操作,分配系统中的资源,管理存储器空间,监测计算机运行和故障,维护计算机安全,操作系统的重要作用,三项主要作用: (1)为计算机中运行的程序管理和分配系统中的各种软硬件资源 (2)为用户提供友善的人机界面(图形用户界面) (3)为开发和运行应用程序提供高效率的平台 其它辅助功能: 辅导用户操作(帮助功能) 显示系统状态 处理软硬件错误 保护系统安全,复习:基本输入输出系统BIOS,基本输入/输出系统是存放在主板上只读存储器(flash ROM) 中的一组程序(也称为firmware, 固件 ) 主要包含4个部分: 加电自检程序 (诊断计算机故障

14、) 系统自举(装入)程序 (启动计算机工作) CMOS设置程序 (设定和修改计算机配置) 基本外围设备的驱动程序 (控制基本的I/O操作) 计算机断电后,BIOS程序和CMOS中的数据仍保持不变 需要时BIOS程序可以升级(update),操作系统的启动(boot up),ROM BIOS,RAM,CPU,CMOS,操作系统运行时内存的态势,3.2.2 多任务处理与处理器管理,问题1:如何安装应用程序?,应用程序买来以后或者从网上下载以后,必须使用安装程序进行安装 安装程序一般称为setup.exe或install.exe,此外还有一个安装说明(文件名一般称为readme) 软件安装时可能需要

15、使用该软件的产品序列号,产品序列号贴在包装盒上或存放在sn.txt文件中 安装程序、安装说明、序列号等通常就包含在该软件的文件夹中 有些软件安装时会启动一个安装响导(wizard),用户只要按照该响导的提示一步一步进行即可 安装成功后,会在开始菜单的“所有程序” 菜单中有一个启动它运行的选项,问题2:如何启动运行应用程序?,最基本的方法是从“开始菜单”进行启动 在桌面上双击应用程序的快捷方式图标来启动应用程序(很多程序在安装后都会将该程序的快捷方式图标放到桌面上以便经常使用) 最近最常使用的应用程序可使用“开始”菜单左侧的一列程序按钮进行启动 通过双击需要处理的文档来启动处理该文档的应用程序

16、通过任务栏中的“快速启动”栏中的按钮进行启动( 有无“快速启动”栏可以自己设置) 在开始菜单的“运行”对话框中输入命令,什么是任务,什么是多任务处理?,“任务”指的是要计算机做的一件事,计算机执行一个任务通常就对应着运行一个应用程序 “单任务处理”与“多任务处理” 单任务处理:前一个任务完成后才能启动后一个任务的运行,任务是顺序执行的 多任务处理(Multitasking):允许计算机同时执行多个任务,任务是并发执行的 多任务处理举例: 编辑PPT讲稿 + 播放音乐 + 收发邮件 多任务处理的优点: 大大提高了用户的工作效率 大大提高了计算机的使用效率,多任务处理举例,制作PPT讲稿,查看文件

17、夹内容,收发电子邮件,播放音乐,如何知道有哪些任务在运行?,每启动一个应用程序,OS就会打开一个相应的窗口,通常一个窗口就是一个任务 每启动一个应用程序,OS就会在任务栏上显示一个相应的任务按钮(程序按钮),通常一个按钮就是一个任务 窗口可以放大或缩小,甚至可以“最小化”,但任务的运行不受其影响 使用“任务管理器”程序可以了解每个任务的运行情况,什么是前台任务与后台任务?,前台任务:能接受用户输入(击键或按击鼠标)的窗口只能有一个,称为活动窗口,它所对应的任务称为前台任务 后台任务:除前台任务外,所有其它任务均为后台任务 前台任务与后台任务的区别: 前台任务对应的窗口(活动窗口)位于其它窗口的

18、前面 活动窗口的标题栏比非活动窗口颜色更深(深蓝色) 前台任务与后台任务的共同点:都在计算机中运行 前台任务与后台任务的切换: 为了输入信息到某个后台任务中去,必须切换窗口(单击要激活的后台任务窗口的任何部位, 或单击任务栏中对应的任务按钮),如何结束任务的运行?,每一个应用程序运行时都要占用大量的系统资源(存储器、CPU、屏幕等),所以当不再需要某个应用程序运行时,就应该退出这个应用程序,释放它所占用的资源 多数应用程序都设计成交互式控制的方式,所以运行完毕后必须由用户退出该程序。 Windows XP中退出应用程序的几种方法: 最快速的方法,是左击应用程序窗口右上角的红色“叉子”按钮 左击

19、窗口左上角的控制按钮,在弹出菜单中选择“关闭” 在应用程序的“文件”菜单中,选择“退出” 通过OS的任务管理器,强迫结束任务,OS如何支持多任务处理?,为什么可以实现多任务处理? CPU速度极高,必须并且可以充分发挥CPU的效能 CPU与I/O(外围设备)的并行工作 各个外围设备之间并行工作 实现多任务处理要解决哪些问题? CPU如何管理和调度 存储器空间如何分配和管理 I/O设备和I/O操作如何管理和控制 谁来解决上述问题? 不是应用程序自己,而是操作系统(OS) !,CPU的管理(处理器管理),目的:让CPU轮流为所有任务服务 原则:公平性;优先级;负载均衡 方法: 按时间片轮转(10-2

20、0ms为1个时间片 ) 按优先级调度,Windows中的处理器管理,Windows为了确保每个已经启动的任务都有机会运行,它采用“抢先式”多任务处理技术: 由硬件计时器大约每10-20ms发出1次中断信号,Windows立即暂停当前正在运行的任务,查看当前所有的任务,选择其中的一个交给CPU去运行 只要时间片结束,不管任务有多重要,也不管它执行到什么地方,正在执行的任务就会被强行暂时终止 上述的任务调度,每秒钟要进行几十次几百次 实际上,操作系统本身的若干程序也是与应用程序同时运行的,它们一起参与CPU时间的分配。当然,不同程序的重要性不完全一样,它们获得CPU使用权的优先级也有区别,3.2.

21、3 存储管理,系统运行时内存储器的布局,内存储器空间划分为2个部分:系统区和用户区,用户区用来存放正在运行的应用程序,分析: 允许同时运行多少程序?数目有没有限制? 程序的大小和数据的规模受不受限制? 程序与程序相互之间会不会互相干扰?,每个应用程序运行时均有属于它自己的存储器空间,用来存储它自己的程序代码和数据,“存储管理”需要解决哪些问题?,为每个任务分配存储空间,任务结束之后收回存储空间 对存储空间进行保护 保护操作系统所在区域不被应用程序修改 保护每个应用程序的私有区域不被其他程序修改 对存储空间进行扩充,使应用程序的存储空间不受实际存储容量大小的限制 解决方案虚拟存储器(Virtua

22、l Memory),虚拟存储器示意图,硬盘中专门划出一个“交换区”,作为物理内存的补充,称为“虚拟内存”,Windows XP的虚拟存储器,Windows XP操作系统中: 虚存空间最大可达到4GB 页面的大小通常是4KB 虚拟内存是系统盘根目录下的一个名为pagefile.sys的文件,其大小和位置用户可设置 使用“任务管理器”可以查看: 总的物理内存大小 可用物理内存大小 总的虚拟内存大小 可用虚拟内存大小等,3.2.4 文件管理,“文件”概念的由来,(按名存取) (按地址存取),什么是文件(file) ?,文件是存储在外存储器中的一组相关信息的集合,例如: 一个程序 一张数码相片 一只M

23、P3歌曲 一封电子邮件 文件是外存中信息的存取(读出/写入)单位 计算机中所有的程序和数据都组织成为文件存放在外存储器中,并使用其名字进行存取操作,文件名和文件类型,文件的名字由两部分组成:(主文件名) .扩展名 主文件名(简称文件名)是文件的主要标识,不可省略 文件扩展名(类型名)由“.”加34个英文字母组成, 用于区分文件的类型: 程序文件(可执行文件):.exe .com 文件中包含的是可以由CPU执行的程序的二进制代码 数据文件: 纯文本文件(.txt) PDF文件(.pdf) Word文件(.doc) 投影片文件(.ppt) 数码照片文件(.jpg) MP3音乐文件(.mp3) 文件

24、中包含的是由程序处理的数据的二进制代码 处理不同类型的数据文件一般需要使用(关联)不同的程序! 文件名字使用西文(或中文)字符组成,但不能使用某些特殊字符(如 ? * :“”等),Windows XP 的文件,允许使用长文件名,即文件名最多可包含255个中文或西文字符 英文字母的大、小写只在形式上加以区分,实际上不予区别 (例如:Text.DOC 与 text.doc 是同一个文件) 常用程序文件的扩展名: .exe .com .dll .bat 常用数据文件的扩展名:,文件的组成和文件说明信息,每一个文件都由2部分组成:,文件在磁盘中如何存储?,磁盘分成两个区域:目录区和数据区 目录实质上是

25、一张“文件名存放位置”的对照表,从磁盘上读出一个文件时,先在目录区中找出该文件的存放位置,然后再按此位置,从磁盘的数据区中读出该文件内容,文件内容,Windows XP 的文件组织,文件目录在Windows中称为文件夹 每个逻辑盘(物理盘或硬盘上的分区)是一个根文件夹 文件夹中既可包含文件,也可包含文件夹 (子文件夹),子文件夹又可存放文件和子文件夹, 形成树状多级文件夹结构,根节点和中间节点都是文件夹,叶节点都是文件,为什么使用多级文件夹? 1)有利于文件分类存储 2)允许文件同名(在不同 文件夹中时) 3)便于文件共享和保护,Windows XP中文件如何定位?,计算机中的每个文件都有一个

26、确定的位置 文件的位置由存放文件的逻辑驱动器号、文件路径以及文件名组成: 驱动器号(盘符) + 文件路径 + 文件名,例 右图中文件02.ppt的位置是: D:数据概论讲稿02.ppt,从根文件夹到文件所在文件夹所顺序经过的一串文件夹,其间用“”相互隔开,下列关于文件的叙述中,错误的是_。,A、用户的程序、数据和文档必须以文件为单位存储在外存储器上 B、设置成隐藏、系统、只读属性的文件一般不会在文件列表中列出 C、Windows采用多级层次结构可以帮助用户对文件进行分类存储 D、Windows系统中可以给某文件命名为my_123.txt,题解,同一硬盘上的文件能否有相同的文件名?,3.2.5

27、设备管理,OS中的“设备管理”程序负责: 对系统中的各种输入输出设备进行管理 处理用户(或应用程序)的输入/输出请求,方便、有效、安全地完成输入/输出操作 参看本章阅读材料3.3,3.2.6 常用操作系统介绍,操作系统的几种类型,PC机使用的操作系统一般都具有多任务处理功能 网络服务器上安装运行的是“网络操作系统”,特点是: 具有强大的多用户并发处理能力 支持多种网络通信功能,提供丰富的网络应用服务 安全性强,可靠性好 军事指挥和武器控制系统、电网调度和工业控制系统、证券交易系统等, 安装运行的是“实时操作系统”,特点是: 对外部事件能快速作出响应, 具有很高的可靠性和安全性 嵌入式计算机应用

28、中运行的是“嵌入式操作系统”,特点是: 快速、高效、具有实时处理功能 代码非常紧凑,存储需求小,微软Windows操作系统,特点: 提供了多任务处理能力 在个人计算机上广泛使用 采用图形用户界面,简化计算机操作 版本的演变:,UNIX和Linux操作系统,都是主流操作系统,主要用于: 在巨型机、大型机上作为网络操作系统使用 经过裁剪后可用于嵌入式系统 关于Linux 属于自由软件(开源软件),原创者是芬兰青年学者李努斯.托瓦尔兹(Linus Torvalds) 应用软件越来越多,用户正在快速壮大,许多商业软件公司也加入了这一行列 参看本章阅读材料3.4,题解,操作系统的主要职责中不包括_。 A

29、. 管理计算机软硬件资源 B. 提供友善的用户界面 C. 清除计算机中的病毒 D. 为应用程序的开发和运行提供一个高效率的平台,操作系统产品有许多种。在下列软件中,不属于操作系统产品类型的是_。,A.UNIX B.Linux C.Access 2000 D.Windows Server 2003,题解,在下列有关Windows系列操作系统及其功能的叙述中,错误的是_。,A.Windows操作系统采用并发多任务方式支持系统中多个任务的执行 B.Windows XP分为多个版本,它们可用于不同计算机和不同的应用 C.与Windows XP相比,Windows Vista做了许多改进,但其硬件运行环

30、境要求较高 D.无论是硬盘还是光盘,它们均采用相同的文件系统,即FAT文件系统,题解,在下列有关Windows 98/2000/XP操作系统的叙述中,错误的是_。,A.系统采用并发多任务方式支持多个任务在计算机中同时执行 B.系统总是将一定的硬盘空间作为虚拟内存来使用 C.文件(夹)名的长度可达200多个字符 D.硬盘、光盘、优盘等均使用FAT文件系统,题解,在下列有关Windows操作系统的叙述中,错误的是_。,A.Windows操作系统采用图形用户界面 B.WindowS XP操作系统分为家庭版、专业版、平板PC版等多种版本; C.在Windows XP环境下,用户可以通过”任务管理器”查

31、看CPU的使用率 D.在Windows XP中,作为虚拟内存使用的交换文件的文件名是Win386.swp,题解,3.3 算法和程序设计语言,3.3.1 算法 3.3.2 程序设计语言 3.3.3 程序设计语言处理系统,计算机求解问题的步骤,(1) 确定并理解问题; (2) 寻找解决问题的方法与步骤,并将其表示成算法(Algorithm) ; (3) 使用某种程序设计语言描述该算法(编程), 并进行调试; (4) 运行程序,获得问题的解答; (5) 进行评估,改进算法和程序,3.3.1 算法,1. 什么是算法?,算法是解决问题的方法与步骤,例:有三个硬币,其中一个是伪造的,另两个是真的,伪币与真

32、币重量略有不同。现在提供一座天平,如何找出伪币呢? 分析: 方法明确而有序 按提供的条件进行操作 任何人均可仿照进行(共享智能),计算机算法的4个特点,目的:完成某个特定的信息处理任务 必须满足的性质: 确定性:算法中每一步操作的含义必须清楚明确,无二义性 有穷性:算法在执行了有限步操作后必须结束 能行性:算法中有待实现的操作都是计算机可执行的,即必须在计算机的能力范围之内,且在有限时间内能够完成 输出:算法结束后至少产生一个输出(包括参量状态的变化),关于算法的三方面问题,如何确定算法(算法设计)? 如何表示算法(算法表示)? 如何使算法更有效(算法分析)?,2. 算法设计举例,例:对整数进

33、行排序,问题:任给一组(n个)整数,将它们从小到大进行排序 粗略的思路: 从所有整数中选一个最小的,作为已排序的第一个数 从剩下未排序整数中选最小的数,添加到已排序整数的后面 反复执行步骤,直到所有整数都处理完毕 进一步细化: 把待排序的整数放在一个数组A中,每个整数是数组A中的一个元素:A1, A2, A3, , An, 排好序的元素在A的前面部分,无序的元素留在后面,每“循环”一次,有序部分增加1个元素,无序部分减少1个元素 每次“循环”只需在数组的无序元素部分选出最小的数 反复进行n-1次即可得到排序后的结果,整数排序算法举例,3. 算法表示与算法分析,算法的表示方法,文字说明 流程图表

34、示 用N-S盒图表示算法 用PAD图描述算法 伪代码(一种介于自然语言和程序设计语言之间的文字和符号表达工具),自然语言描述,“比较与的重量,若,则是伪造的;否则再比较与的重量,若,则是伪造的;否则是伪造的。” 缺点: 容易产生歧义,很难 “精确”地进行表达 叙述冗长,很难清楚地表达算法的逻辑流程,算法的流程图表示,流程图由结点和有向边构成,它描述了算法所执行操作的顺序及执行操作的条件 流程图符号 :,比文字描述简明,但当算法比较复杂时,理解困难,容易产生错误,算法分析的基本内容,正确性:给定有效输入后,经过有限时间的计算,产生正确的输出结果 复杂性:执行算法所要占用计算机资源的多少,包括时间

35、资源和空间资源两个方面 简单性 算法是否容易理解,是否容易验证其正确性,程序是否容易调试 简单的算法效率不一定高,要在保证一定效率的前提下力求算法简单,计算机中处处是算法!,例1:Word程序如何在文档中查找用户指定的词语? 例2:在Word文档的表格中如何将表格内容排序? 例3:如何把一幅彩色图片转换为灰度(黑白)图片? 例4: Windows如何在硬盘中找到用户指定的文件? 例5:媒体播放器如何把MP3文件转换成动听的音乐? 例6:搜索引擎如何在WWW网中找到用户需要的网页?,算法是计算机软件的灵魂,计算机的通用性是因为它能运行各种各样的程序,而程序之所以能解决问题,是因为它所体现了正确的

36、算法 算法所解决的是一类问题而不是一个特定的问题,例如 排序(sort) 可以是表格内容的排序,也可以是文件夹中文件的排序,可以按数字或文字排序,也可以按日期排序,等等 查找(search), 可以在文档中查找某个单词或在硬盘中查找某个文件,也可在Web上查找某个网页,等等 开发计算机应用的核心是:根据实际问题给出解题的算法,然后再将该算法在计算机上实现(即开发成为软件),3.3.2 程序设计语言,什么是程序设计语言?,什么是程序? 程序是为了用计算机解决某个问题而采用程序设计语言编写的一个指令序列 什么是程序设计语言? 语言的目的是用于通信 程序设计语言用于人与计算机之间的通信 程序设计语言

37、是由人使用但计算机可以理解的一种语言 程序设计语言用于编制程序,表达需要计算机完成什么任务和怎样完成任务,然后交给计算机去完成,程序设计语言填补了 人与计算机交流的鸿沟,计算机中使用多种“语言”,程序设计语言:主要用于描述算法 机器语言、汇编语言、高级语言 数据描述语言(文档规范、文件格式):主要用于描述数据(文档、音乐、图形、图像、视频等)的结构和格式 HTML、XML、MIDI、MP3、OpenGL、JPEG、MPEG、 脚本语言(VBA、VBScript、JavaScript ) 计算机通信语言(通信协议):用于描述计算机-计算机之间的会话(请求-应答)的语法和语义 HTTP、POP3、

38、SMTP、 FTP、 Telnet、TCP、IP、 数据库语言:用于数据操作,如SQL语言,机器语言 汇编语言 高级语言,程序设计语言分类,机器语言,机器语言就是计算机的指令系统 指令是使用二进制编码表示的 用机器语言编程序, 也就是直接使用二进制代码编写程序 优点: 可以直接被计算机执行 缺点: 记不住、难理解、效率低、不易维护 不同的机器语言程序,相互不兼容 现在已不直接用机器语言编制程序!,例:机器语言程序,在MIPS计算机上求最大共约数(GCD)的机器程序(16进制表示),MISP计算机的每条机器指令均为32个二进位,用8个16进制数表示,汇编语言,用助记符号来表示机器指令中的操作符与

39、操作数,优点: 操作数直接使用十进制 程序相对容易理解,缺点: 大型程序难以开发 依赖于具体计算机,将383传送到AX寄存器,将545传送到BX寄存器,将BX内容加AX内容,结果在BX中,将1055传送到AX寄存器,将AX内容减BX内容,结果在AX寄存器中,高级程序设计语言,目的:克服汇编语言的缺陷,提高编程和维护的效率 特点: 接近人们日常使用的自然语言(主要是英语)容易理解、记忆和使用 可在不同计算机上通用 对使用的符号、词汇、语法和语义等各种语言成分都有严格的规定 意义:使程序设计的难度降低,导致了计算机的发展进入新的阶段,高级程序设计语言的发展,50年代:Fortran,ALGOL 6

40、0年代:COBOL语言 70年代:Pascal 语言,C语言,BASIC语言 80年代: Ada语言,PROLOG语言,LISP语言 90年代起:面向对象语言C+、 JAVA、C#等,程序设计语言的4种基本成分,数据成分: 用于描述程序所涉及的对象数据 运算成分: 用以描述程序中所包含的运算(算术运算、逻辑运算、字符串运算等) 控制成分: 用以控制程序中所含语句的执行顺序 传输成分: 用以描述程序中的数据传输操作,常用程序设计语言介绍,FORTRAN语言,FORTRAN是FORmula TRANslation (公式翻译)的缩写词,它是一种主要用于数值计算的面向过程的程序设计语言。FORTRA

41、N语言的特点是接近数学公式,简单易用 目前最新的国际标准是FORTRAN2003,BASIC和Visual Basic语言,BASIC语言的特点是简单易学 Visual BASIC(VB)语言是微软公司基于BASIC发展而来的一种程序设计语言,特点是: 是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言 具有高效率、简单易学及功能强大的特点 可以高效、快速地开发Windows 环境下功能强大、图形界面丰富的应用软件,Java语言,由SUN Microsystem公司于1995年发布的一种面向对象的、用于网络环境的程序设计语言 基本特征是: 适用于网络分布环境 具有一定的平台独

42、立性 安全性和稳定性好 Java语言受到各种应用领域的重视,取得快速的发展,在Internet上已推出了用Java语言编写的很多应用程序,C语言和C+语言,C语言是19721973年间由ATT公司Bell实验室开发而成 C语言兼有高级语言的优点和汇编语言的效率,有效地处理了简洁性和实用性、可移植性和高效性之间的矛盾 C+语言以C语言为基础发展而成,既有数据抽象和面向对象能力,运行性能高,又能与C语言兼容,因而C+语言迅速流行,成为当前面向对象程序设计的主流语言,3.3.3 程序设计语言处理系统,程序设计语言的翻译程序,把甲语言编写的程序翻译为等价的乙语言编写的程序。其中甲语言程序称为源程序,乙

43、语言程序称为目标程序,常用的有下列几种:,编译程序与解释程序的区别,解释:解释器直接解释并且执行源语言程序,不产生目标程序(相当于“口译”) 编译:把源程序编译为机器语言目标程序后,再由计算机运行(相当于“笔译”),BASIC、Visual Basic、VBScript、Java、JavaScript等都是解释执行的语言,C、C+等都是需要编译的语言,题解,一个算法应包含至少_输出。 A. 零个 B. 一个 C. 一个以上 D. 多个 以下编程语言中, _是面向机器的低级语言。 A. 机器语言 B. 汇编语言 C. Basic语言 D. C语言,在下列有关计算机软件的叙述中,错误的是_。,A.

44、程序设计语言处理系统和数据库管理系统被归类为系统软件 B.共享软件是一种具有版权的软件,它允许用户买前免费试用 C.机器语言和汇编语言与特定的计算机类型有关,取决于CPU D.目前PC机只能使用Windows系列操作系统,均不能使用UNIX和Linux操作系统,题解,在下列有关算法和数据结构的叙述中,错误的是_。,A.算法通常是用于解决某一个特定问题,且算法必须有输入和输出 B.算法的表示可以有多种形式,流程图和伪代码都是常用的算法表示方法 C.常用的数据结构有集合结构、线性结构、树形结构和网状结构等 D.数组的存储结构是一种顺序结构,题解,在下列有关算法和数据结构的叙述中,错误的是_。,A.算法描述解决问题的步骤,数据结构描述求解问题的对象 B.算法应具有确定性、有穷性和能行性 C.数据结构研究的内容包括数据的逻辑结构和存储结构,与数据的运算无关 D.精心选择和设计的数据结构可以提高算法的时间效率和空间效率,题解,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1