3   计算机软件
考核知识要点、重点、难点精解
考点 l :计算机软件
一个完整的计算机系统有两个基本组成部分,即计算机硬件和计算机软件。计算机硬件是组成计算机的各种物理设备的总称;而计算机软件指的是能指示(指挥)计算机完成特定任务的、以电子格式存储的程序、数据和相关的文档。
1 .程序
程序是指示计算机如何去解决问题或完成任务的一组详细的、逐步执行的语句(或指令) , 程序的每一步都是用计算机所能理解和处理的语言编写的。
注意  程序是软件的主体,单独的数据和文档一般不认为是软件.
2 .数据
数据是程序所处理的对象及处理过程中使用的参数。
3 .文档
文档则是程序开发、维护和使用所涉及的资料(如设计报告、维护手册和使用指南等) , 软件(特别是大型软件)必须有完整、规范的文档作为支持。
考点 2 * :软件的分类
计算机软件系统分为系统软件和应用软件两大类。
1 .系统软件
系统软件是开发和运行应用软件的平台,是为高效使用和管理计算机而提供的软件。它主要包括有:操作系统、语言处理系统、数据库管理系统、网络通信管理程序、各类服务性程序等。系统软件的核心是操作系统。
( 1 ) 操作系统
操作系统用于控制和管理计算机所有的软件、硬件资源,合理组织计算机的工作流程,是用户与计算机之间的接口。操作系统有 5 大管理功能,分别是:处理器管理、存储管理、
设备管理、文件管理和作业管理。在硬件设备齐全的基础上,计算机只有安装了操作系统后,才能运行和使用其他软件。
目前,微型计算机最常用的操作系统有 DOS 、 Windows 、 UNIX 、 Linux等。
计算机软件的组成
( 2 )语言处理系统
语言处理系统是人与计算机交换信息的工具。其作用是将源程序转换成计算机能够识别的目标程序,从而让计算机能够解决实际问题。
编写源程序所采用的语言称为程序设计语言,目前最常用的程序设计语言有汇编语言、 BASIC 、 C 、 FORTRAN 、 Pascal 等。
注意  汇编语言源程序的转换需要汇编程序,高级语言源程序的转换需要编译程序,Basic语言源程序的转换需要解释程序。
( 3 ) 数据库管理系统
当前,数据库系统已得到了迅速发展。数据库系统是由数据库、数据库管理系统组成。数
据库是按照一定规则存储的数据集合。数据库管理系统则是负责数据库存取、管理和维护的软件系统,其主要作用是对数据进行检索、查、更新、删除、修改、排序、统计等,数据库管理系统是数据库系统的核心。
( 4 )服务性程序
服务性程序指的是给用户提供方便,便于使用与维护计算机而开发编制的程序。
目前,服务性程序主要有:工具软件、软件调试程序、错误测试和诊断程序、编辑程序及链接程序等。
2 .应用软件
( 1 )应用软件的概念
应用软件指的是为解决计算机应用中的实际问题而编制的软件,如:文字处理软件、表格处理软件、财务软件、工程设计软件等。
( 2 )应用软件的分类
从其服务对象的角度来看,应用软件可分为通用软件和专用软件两大类。
1 通用软件支持最基本的应用,应用较为广泛,可以在市场上购买,例如: offiee 办公软件。
2 专用软件只应用于某一专业领域,只解决某个应用领域的具体问题,市场上没有现成的软件,需要专门组织人员进行开发。
考点 3 :计算机软件技术
1 .计算机软件技术的概念
计算机软件技术是指研制和开发计算机软件所需技术的总称。
2 .计算机软件技术的组成部分
按照计算机软件学科的内容划分,计算机软件技术主要包括以下七个方面:
( 1 ) 软件工程技术
包括软件开发的原则与策略,软件开发方法与软件过程模型。软件标准与软件质量的衡量,软件开发的组织与项目管理,软件版权管理等。
( 2 ) 程序设计技术
包括程序的结构与算法设计,程序设计风格,程序设计语言,程序设计方法和程序设计自动化,程序正确性证明,程序变换等。
( 3 ) 软件工具环境技术
包括人机接口技术,软件自动生成,软件工具的集成和软件开发环境,软件复用,逆向工程等。
( 4) 系统软件技术
包括操作系统,编译方法,分布处理,并行处理技术等。
( 5 ) 数据库技术包括数据模型,数据库与数据库管理系统,分布式数据库,面向对象的数据库技术,各类专用数据库技术等。
( 6 ) 网络软件技术
包括协议工程,网络管理,局域网技术,网络互连技术,智能网络等。
( 7 ) 与实际工作相关的软件技术
例如软件质量控制、软件配置管理、用户在线帮助文档和图标设计、软件规模控制、软件评估和软件开发计划的制定、软件需求表示和软件规格说明书的确定等。
必须指出,软件技术还渗透到计算机科学技术的其他领域,如人工智能、中文信息处理、图形图像处理、计算机辅助技术、计算机实时控制和仿真、多媒体计算技术等。
考点 4 :操作系统的作用与功能
1 .操作系统的作用
操作系统主要有以下三个方面的重要作用:
( l ) 管理系统中的各种软硬件资源。
( 2 ) 为用户提供友善的人机界面。
( 3 ) 为应用程序的开发和运行提供一个高效率的平台。
2 .操作系统的功能
操作系统有 5 大管理功能,分别是:处理器管理、存储管理、设备管理、文件管理和作业管理。
考点 5 * :常用操作系统
1 . Windows 操作系统
( 1 ) 1998 年推出的 Windows98 具有 Windows95 所不具备的许多特点,例如系统的可靠性和性能、多媒体支持、 FAT32文件系统、系统管理工具、新一代硬件支持、网络和 Internet 支持等都得到了增强。
( 2 ) 在开发 windows9x 操作系统的同时,1989 年起微软公司还为商用 PC 机专门开发一个新的操作系统系列 WindowsNT 。 WindowsNT 采用与 Windows9X 不同的内核,其设计
目标是系统应具有鲁棒性,必须能主动地保护自身免受内部异常和外部有意或无意破坏的影响,并且必须对软件和硬件的错误做出可预测的响应,具有高性能,采用一些更有效的算法和数据结构。
( 3 ) 2000 年微软公司推出的 Windows 2000 仍然面向商务应用,具有高可靠性和高可用性。
( 4 ) 2001 年微软公司推出的 Windows XP 是第一个既适合家庭用户,也适合商业用户使用的新型 Windows 操作系统。
( 5 ) 为了适应大型服务器运行的需要,微软公司推出了 Windows 2003 ,其性能得到进一步提高。
2 . UNIX 以操作系统
UNIX 操作系统是美国 Bell 实验室开发的一种通用多用户交互式分时操作系统。其特主要体现在以下方面:
( 1 ) 结构简练
UNIX 系统以树形目录结构的文件系统为基础,可方便地对文件进行各种查、增加和删除操作。而且将各种设备都定义为特殊文件,对这些设备的操作以统一的文件方式处理,简单明了。 UNIX 系统的体系结构很有特,它可分为两大部分:
内核部分
负责利用硬件所提供的基本操作,向外层提供全部应用程序所需的服务。
外层应用子系统
包括 UNTX 系统的命令解释程序( shell )、文本处理程序、邮件通信程序及源代码控制系统等,用户可通过“系统调用”对内核的功能进行调用。
( 2 )功能强大
早在 UNIX 系统发布初期,它所具有的功能在当时的大型操作系统中就很少见。其中包括可装卸的层次式文件系统、创建异步进程的能力、 shell 命令解释程序功能以及“管道” ( pipe ) 机制等。其中 pipe 机制是 UNIX 系统的贡献,它能将许多小的功能连接组装,进而成为实现复杂功能的软件工具。
( 3 ) 可移植性好
这一特主要源于 C 语言和源代码开放策略。由于 UNIX 系统90%以上的代码是用 C 语言编写的,因此有很好的可移植性。
( 4 ) 可伸缩性和互操作性强
可伸缩性是指系统在性能范围很宽的硬件配置上运行的能力,而互操作性是指在不同厂家的机器上运行和通信的能力。这两点是开放系统所应具有的基本特征。 UNIX 系统可以从笔记本电脑直到巨型计算机上都能运行。
( 5 ) 容纳新技术的能力强
迄今为止,国际上很多软件技术(包括面向对象技术)和产品开发都是在 UNIX 系统上进行的。在具有重要突破意义的“客户/服务器”结构中,一般均把 UNIX 系统作为服务器首选的操作系统平台。
( 6 ) 网络通信功能强
UNIX 系统提供了一系列的网络通信工具和协议。著名的 TCP / TP 网络协议也是在 UNIX 系统上开发成功的。因此, UNIX 系统已成为很多分布式系统中服务器选用的一种网络操作系统。
3 . Linux 操作系统
Linux 操作系统的优势反映在网络服务器方面,其内核中包含许多网络协议,已成为网络上最普遍的服务器架构模式。 Linux 操作系统作为一个多用户、多任务的操作系统,支持多种工作平台和多处理器。它不仅可提供容量多达 4TB 的文件系统,同时还可支持多种其他的文件系统。 Linux系统的源代码向世人公开。
考点 6 * :程序设计语言及其分类
程序设计语言按其级别可以划分为机器语言、汇编语言和高级语言三大类。
1 .机器语言
机器语言是使用计算机指令系统的程序语言。用机器语言编写的程序,全部都是二进制代
码形式,可以被计算机直接执行,由于机器语言直接依赖机器的指令系统,对于不同类型甚至不同型号的计算机,其机器语言是不同的。因而,在一种类型计算机上编写的机器语言程序,在另一种不同类型的计算机上可能不能运行。
2 .汇编语言
汇编语言用助记符来代替机器指令的操作码和操作数,如用 ADD 表示加法,用 SUB 表示减法等。这样就能使它的每条指令都有明显的符号标识。用汇编语言编写程序与编写机器语言程序相比,比较直观和易记忆,但汇编语言仍然是面向机器指令系统的,还保留了机器语言的各项缺点。
3 .高级语言
为了克服汇编语言的缺陷,提高编写程序和维护程序的效率,一种接近人们自然语言(主要是英语)的程序设计语言应运而生了,这就是高级语言。因为它可对具体算法进行描述,所以又称算法语言。