
1.2.4 计算机软件组成
计算机软件系统是相对于硬件系统而言的,没有软件系统的计算机是无法工作的。计算机的性能不仅仅取决于硬件系统,更大程度上取决于软件的配置是否完善、齐全。硬件系统和软件系统相互依赖、不可分割。
软件是计算机的灵魂。软件是指运行在计算机上的程序,以及运行程序所需的数据和相关文档的总称。软件是用户与硬件之间的接口,用户通过软件使用计算机资源。
计算机软件系统包括系统软件和应用软件两类。
1.系统软件
系统软件是指管理计算机资源、分配和协调计算机各部件工作,使用户能方便地使用计算机而编制的软件,常用的系统软件有操作系统、计算机语言处理程序、数据库管理程序等,其中最主要的是操作系统,它提供了一个软件运行的环境。
系统软件是软件的基础,主要有以下几类:
(1)操作系统
操作系统是最重要最基本的系统软件,是系统软件的核心。它是管理和控制整个计算机软、硬件资源,方便用户充分而有效地使用这些资源的程序集合。计算机系统中的主要部件之间相互配合、协调一致的工作,都是靠操作系统的统一控制才得以实现的,其他软件都是建立在操作系统基础上的。
操作系统是沟通用户与计算机之间的“桥梁”,是人机交互的界面。没有它,用户无法使用其他软件和程序。
操作系统的主要作用:
①提高系统资源的利用,通过对计算机软、硬件资源进行合理的调度与分配,改善资源的共享和利用状况。
②提供方便友好的用户界面。
③提供软件开发的运行环境,在开发软件时,需要使用操作系统管理下的计算机系统,调用有关的工具软件及其他软件资源。
常见的操作系统及其特点如表1-2所示。
表1-2 常见操作系统及其特点

操作系统的种类繁多,有嵌入式操作系统、个人计算机操作系统、多处理器操作系统、网络操作系统和大型机操作系统等,如广泛使用在智能手机或平板电脑的嵌入式操作系统Android、IOS、Symbian等,主要用于个人计算机上的桌面操作系统Windows 7、Windows 8、Mac OS X等,主要用于大型机上的服务器操作系统Windows Server 2008、Red Hat Linux等。
(2)计算机语言及语言处理系统
计算机语言又称程序设计语言,是指编写程序所使用的语言,是人与计算机之间交流的工具。按照和硬件结合的紧密程度,可以将程序设计语言分为机器语言、汇编语言和高级语言。
①机器语言。机器语言是直接用二进制代码表达的计算机语言,是计算机系统能够直接执行的语言。它的特点是计算机能够识别,用其编写的程序执行效率高,但编写困难,可移植性差,可读性差,并且不易掌握。
②汇编语言。为了克服机器语言的缺点,人们想到直接用英文单词或缩写来替代二进制代码进行编程,从而出现了汇编语言。
汇编语言也是面向机器的语言,它采用比较容易识别和记忆的符号来表示程序,例如,使用ADD表示加法,使用MOV表示传送等。用汇编语言编写的程序比用机器语言编写的程序易于理解和记忆。汇编语言编写的程序在执行之前必须先翻译成机器语言程序(目标程序),再链接成可执行程序在计算机中执行。程序执行效率较高,但可移植性差。
③高级语言。汇编语言虽然比机器语言前进了一步,但使用起来仍然很不方便,编程依然是一件极其烦琐的事情。因而,人们继续在寻找一种更方便的编程语言,于是出现了高级语言。
高级语言是最接近自然语言的程序设计语言,它不依赖计算机硬件,通用性和可移植性较好。用高级语言编写的程序,计算机硬件同样不能直接识别和执行,也要经过翻译后才能执行,但可读性好、易掌握、可移植性好。高级语言种类较多,常用的语言有Visual Basic、Visual C++、C#、Java和Delphi等。
语言处理程序也属于系统软件。对于计算机硬件来说,只能识别和执行用机器语言编写的程序。如果使用汇编语言或高级语言编写的程序,在计算机执行之前要先进行翻译,完成这个翻译过程的程序称为语言翻译程序,主要有汇编程序、解释程序和编译程序三种。
①汇编程序。汇编程序的作用是将用汇编语言编写的源程序翻译成机器语言的目标程序。
②解释程序。解释方式是通过解释程序对源程序一边翻译一边执行,如Java就是属于解释型。
③编译程序。大多数高级语言编写的程序采用编译的方式,如C、Visual C++。编译过程是先将源程序编译成目标程序,然后通过连接程序将目标程序和库文件连接成可执行文件,通常可执行文件的扩展名是.exe。由于可执行文件独立于源程序,因此可以反复运行,运行速度较快。
无论是编译程序还是解释程序,其作用都是将高级语言编写的源程序翻译成计算机可以识别和执行的机器指令。它们的区别在于:编译方式是先将源程序编译成可执行程序,然后脱离源程序和编译程序单独执行,所以效率高,执行速度快。而解释方式是源程序和解释程序必须同时参与,边解释边执行,不产生目标文件和可执行程序,相对来说,效率较低,执行速度较慢。
(3)数据库管理系统
数据库管理系统(DataBase Management System,DBMS)是应用最广泛的软件之一,它是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。为了更好地理解数据库管理系统,先来了解几个相关的概念:
①数据:是指数据库中存储的基本对象。数据的种类有很多,如文字、图形、图像、声音、客户的档案记录等。
②数据库:是指存储在计算机系统内有结构的数据集合,简单来说,就是指存放数据的仓库。数据库中的数据按照一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并能被各种用户共享。
③数据库系统:是指引入数据库后的计算机应用系统。它包含以数据为主体的数据库和管理数据库的数据库管理系统,一般由数据库、数据库管理系统、应用开发工具、应用系统、数据库管理员和用户构成。
④数据模型:是对现实生活中各种数据特征的抽象,是数据库中数据的存储方式。每一种数据库管理系统都基于某种数据模型,主要的数据模型有层次模型、网络模型、关系模型和面向对象模型等。
⑤关系模型:是目前数据库系统中应用最广泛的一种数据模型,在数据库产品中关系模型占主导地位。它是用二维表结构来表示实体及实体间联系的模型,并以二维表格的形式组织数据库中的数据。一个关系就是一张二维表,每个关系有一个关系名即二维表的表名;二维表中的行称为元组,又称记录;列称为属性,又称字段;每列有一个列名,又称字段名。一个关系应满足如下性质:
·表格中的每一列都是不可分割的基本属性。
·每列具有相同的数据类型。
·每列被指定一个唯一的列名。
·任意两行的内容不能完全相同。
·各行之间、各列之间可以任意变动顺序而不影响表格信息。
·每个关系都有一个主键,它能唯一地标识关系中的一个记录。
现在流行的关系数据库产品有Microsoft Access、MySQL、SQL Server和Oracle等。它们都以各自特有的功能,在数据库市场上占有一席之地。
(4)系统辅助工具软件
系统辅助工具软件是系统软件的一个组成部分,用来帮助用户更好地控制、管理和使用计算机的各种资源,如显示系统信息、整理磁盘、制作备份、监控系统、查杀病毒等。
2.应用软件
应用软件是用户为了解决某些特定具体问题而开发和研制或外购的各种程序,它通常涉及应用领域知识,并在系统软件的支持下运行,如文字处理、图形处理、动画设计、网络应用等软件。常见的应用软件有:
(1)办公软件
办公软件是日常办公需要的一些软件,一般有文字处理软件、电子表格处理软件、演示文稿制作软件等。常见的办公软件有微软公司的Microsoft Office和金山公司的WPS等。
(2)多媒体处理软件
多媒体处理软件主要用于处理音频、视频及动画等。常用的视频处理软件有Adobe Premiere、Flash、Cool Edit、Maya、3ds max等,其中Flash用于制作二维动画,Cool Edit用于音频处理,Maya、3ds max等是大型的3D动画处理软件。
(3)游戏软件
游戏软件通常是指用各种程序和动画效果相结合的软件产品,正在不断发展壮大。游戏软件主要来自欧美、日本等国家,我国也自主研发了不少游戏软件。