新编计算机导论(第2版)
上QQ阅读APP看书,第一时间看更新

3.2 软件相关概念

计算机软件决定了一台计算机能做什么。从某种意义上说,软件将计算机从一种类型的机器转变为另一种类型的机器——从绘图到排版、从飞行模拟器到计算器、从文件系统到音乐工作室,如此等等。

3.2.1 程序与软件

所谓计算机程序,就是指示计算机如何去解决问题或完成任务的一组详细的、逐步执行的指令(即:指令的有序集合)。有些计算机程序只处理简单的任务,而那些更长、更复杂的计算机程序则用于处理复杂度较高的任务。

计算机程序的每一步都是用计算机能理解和处理的语言编写的。以前的组织和个人必须自行编写出绝大部分他们想要的计算机程序,而现在可以购买商业软件以避免自行开发所需花费的时间和费用。一般人几乎不编写程序,而是从成千上万个编写好的商业软件中选择自己所需要的东西。尽管如此,计算机程序员或软件发行商的工作仍然是非常具有挑战性的。

软件是计算机系统的基础部分。早期,流行用“软件”这个词来表示计算机的所有非硬件部分,即:软件是指计算机程序以及为这些程序所用的数据。1980年,美国版权法案将软件明确定义为“在计算机中被直接或间接用来产生一个确定结果的一组语句或指令”,这意味着计算机软件和计算机程序在本质上是相同的。软件也可以指任何以数字形式出现的数据(如文档和照片),但按照现在的理解,所创建的文档和照片通常称为“数据文件”而不是“软件”。

2006年出版的《中国大百科全书》将软件定义为:软件是“计算机系统中的程序和有关的文件。程序是计算任务的处理对象和处理规则的描述;文件是为了便于了解程序所需的资料说明。程序必须装入机器内部才能工作,文件一般是给人看的,不一定装入机器。程序作为一种具有逻辑结构的信息,精确而完整地描述计算任务中的处理对象和处理规则。这一描述还必须通过相应的实体才能体现。”

也就是说,“软件”不仅仅是指程序,在软件研制过程中按一定规格产生的各种文件也是软件不可缺少的组成部分。

3.2.2 系统软件与应用软件

软件一般被分为系统软件和应用软件,对于计算机的一般用户而言,这之间的区别并不明显。

系统软件负责执行使计算机硬件有效工作的关键任务,协助计算机完成基本操作,像在屏幕上显示信息、在磁盘中存入数据、向打印机发送数据、解释用户命令以及和外围设备通信等。系统软件的四个子类是:操作系统、实用工具、设备驱动程序和编程语言。

应用软件可以协助人们完成一项任务。即使用户没有计算机也能做某件事情,但为了让这件事情计算机化而使用某个软件时,就可以认为该软件是应用软件。例如,即使用户没有计算机,也能写信或写报告,那么用来制作一个文档的软件就可以算是应用软件。

应用软件使计算机成为多用途的机器,以完成许多不同的工作,比如,应用软件能够帮助用户产生文档、完成计算、管理金融资源、生成图片、创作乐曲、维护文件或信息等等。

3.2.3 编程语言

计算机编程语言使程序员能够使用类似于英语的指令来编写程序。实际上,程序员编写的指令和计算机实际执行的指令有相当大的不同,程序员的指令必须被翻译成电子信号,才能被计算机操作和处理,编程语言(相应的编译程序或解释程序)将负责这个翻译过程。

如今,大多数计算机用户都不需要编写程序,因此,一般计算机,尤其是微型计算机中并没有包括计算机编程语言。如果想编写程序,必须另外购买和安装编程语言软件。现在应用较为广泛的编程语言主要有C、C++、C#、Java、Visual Basic、.net等。