书城童书《电脑知识篇》(上)
34215500000010

第10章 电脑时代话电脑(6)

现在,人们把软件分为两大类。一类叫做系统软件,它是同机器出厂时一起配备好,作为机器的一个重要组成部分出售的。其中包括操作系统、语言编译系统、服务性程序等。它们用于计算机内部的管理、维护、控制与运行、程序翻译、编译等方面。不管干什么事情,只要用机器,都要调用系统软件。另一类是应用软件,包括各种各样的面向实际问题的程序。其中,一部分是通用化和商品化了的,称为软件包,或叫应用程序包。如计算机辅助设计,各类数据库,情报检索系统,医疗诊断系统等等。

计算机做的任何事情,无论是科学计算、工程设计、行政管理、还是跟你玩游戏,统统是在程序指挥下进行的。程序对于计算机,就像乐谱对于钢琴,棋谱对于棋一样重要。它代表了计算机的智慧和灵魂,它是所谓软件的核心部分。没有软件的计算机就像没有思想的人,只能是一堆废物。

人们通常把软件分成两大类。专门应用于某个实际领域的软件称为应用软件。例如,帮助老师教学和学生学习的计算机辅助教学软件,处理各类行政事物的管理应用软件(工资报表人事档案、饭店经营等等)、能同你玩各种游戏的软件。各种应用软件数以千万计,已经渗透到人类生活的各个领域。

另一类软件叫系统软件。它不是只应用于某个专门领域,而是面向所有用户。用户只能通过这个媒介去使用应用软件。因此它具有特殊的重要性。在系统软件中,最重要的有两类。第一类是高级语言及其编译程序。在计算机上运行的应用程序一般是用高级语言编写的。

但计算机除了它本身的机器语言外,并不认识其他任何语言。必须通过“翻译”——它也是一种软件,把别的语言翻译成机器语言,计算机才能执行。替汇编语言当“翻译”的叫汇编程序。替高级语言当翻译的叫编译程序。此外,还有一种翻译软件,它不是把用高级语言写的整个程序翻译成机器指令后再执行,而是一边翻译,一边执行。这种翻译软件叫解释程序。BASIC语言的翻译程序就是解释程序。

另一类重要的系统软件叫操作系统。它是计算机的大管家,指挥着计算机系统自己管理自己。

现在,当人们谈到计算机系统时,总是指计算机硬件和软件的综合体。计算机越发展,软件的作用就越突出。这是因为计算机的生命在于应用,要应用就必须有软件。

计算机程序设计语言

我们知道,要使计算机按人的意图运行,就必须使计算机懂得人的意图,接受人的命令。人要和机器交换信息,就必须要解决一个语言问题。为此,人们给计算机设计了一种特殊语言,这就是程序设计语言。程序设计语言是一种形式语言。语言和基本单位是语句,而语句又是由确定的字符串和一些用来组织它们成为有确定意义的组合规则所组成。

程序设计语言是人们根据实际问题的需要而设计的。目前可以分为三大类:一是机器语言。它是用计算机的机器指令表达的语言;二是汇编语言。它是用一些能反映指令功能的助记符表达的语言;三是高级语言。它是独立于机器、接近于人们使用习惯的语言。

在计算机科学发展的早期阶段,一般只能用机器指令来编写程序,这就是机器语言。由于机器语言直接用机器指令编写程序,无论是指令还是数据,都须得用二进制数码表示,给程序编制者带来了很多麻烦,需要耗费大量的时间和精力。为了解决这个问题,使程序既能简便地编制,又易于修改和维护,于是出现了程序设计语言。程序设计语言一般分为低级语言和高级语言。低级语言较接近机器语言,它是用由英文字母的助记符代替指令编码,用英文字母和阿拉伯数字组成的十六进制数代替二进制数,从而避免了过去用来表示指令、地址和数据的令人烦恼的二进制数码问题。典型的低级语言是汇编语言。正因为汇编语言是低级语言,所以它对机器依赖性较大。不同的机器有不同的指令系统,所以,不同的机器都有不同的汇编语言。

高级语言则是独立于指令系统而存在的程序设计语言,它比较接近人类的自然语言。用高级语言编写程序,可大大缩短程序编写的周期。高级语言比汇编语言和机器语言简便、直观、易学,且便于修改和推广。

目前,世界上已有许多各种各样的程序设计语言。由于计算机本身只认识它自己的机器指令,所以对每个程序设计语言都要编制编译程序或解释程序。编译程序、解释程序是人和计算机之间的翻译,它负责把程序员用高级语言编写的程序翻译成机器指令。这样,计算机才能认识这程序,这程序才可以上机运行。

由于不同的程序设计语言有不同应用范围,至今还没有一种程序设计语言能把所有应用包含在内。现在广为应用的几种语言中,FORTRAN侧重科学计算,BASIC善于人机对话,PASCAL着重结构设计,COBOL长于报表处理。

人们交流思想、传递信息要使用语言这个工具。我们要让计算机为我们工作,也必须同计算机交流信息,同样有个语言工具问题。学习使用电子计算机,主要的就是学习电子计算机的语言。

电子计算机语言分三类:

①机器语言:它是用二进制数0、1的不同排列来传递信息,是目前的电子计算机惟一能直接接受的语言。这种语言程序难编、难读、难记、难改,但却能充分发挥机器的作用。

②符号语言:它是以符号化的码子代替二进制码。

符号语言比机器语言容易记忆,但仍难编、难读。对于初学者和一般使用计算机的人,可以不必学习机器语言和符号语言。

③高级语言:这种语言比较接近人们的自然语言和数学语言,比较直观、易编、易读,而且通用性强。

高级语言的出现(五十年代末),极大地促进了计算机的发展和普及,有人说这是“惊人的成就”。

电子计算机并不能直接识别高级语言,而是必须将高级语言“解释”成机器语言才能接受,所以使用高级语言会使计算机的运行速度降低几倍甚至十几倍。但这是我们有时不得不付出的代价。

目前国内外的高级语言种类很多,它们的特点和适用范围各不相同。适合青少年学习的高级语言有BASIC和LOGO。

计算机的特殊机房

看见过计算机的人都知道,计算机一般都放置在特殊的机房甲:机房甲没有窗户,处于密封状态;地板、墙壁和天花板都经过特殊处理:铺着防静电的地板,贴着壁纸。机房装备有空调设备,有能在停电时负责供电的不间断电源,还有超净工作间等等。在机房:工作的人都穿着白大褂、戴着白帽子,脚上穿着只能在机房里穿的拖鞋……为什么要这么特殊呢?

我们知道,计算机是一种非常精密的仪器,它对环境要求很苛刻,尤其是作为计算机主要外存设备的磁盘机。磁盘机内装着磁盘组——它是记录数据信息的载体,就像我们平常用的纸;还有多个磁头——它是记录和读取数据信息的工具:记录数据时,它是笔;读取数据时,它是眼睛。在进行读写操作时,磁头距磁盘盘面的距离一般只有几微米。要保持这样小的距离,磁头和磁盘般面又不能接触,这就要求盘面与磁头的相对位置绝对准确,不能有丝毫偏差,盘面要绝对光洁。试想,如果有一粒直径几微米的灰尘掉在盘面上,那很可能就会磨坏磁头,划坏磁盘,造成数据丢失,系统瘫痪,损失是极其严重的,为了防止无孔不入的灰尘钻进去破坏磁盘,就必须采取一系列防尘措施,诸如密封、贴壁纸、穿白大褂、拖鞋等等,尽量减少机房里的灰尘数量。此外,温度和湿度的变化也会对计算机构成威胁,严重时会影响机器正常工作,所以必须给它装上空气调节器,以调整机房内的温度湿度,避免夏天温度过高,冬天温度过低。再者,计算机每时每刻都在运行,机内有许多运行着的活的程序和数据。如果突然停电,正在运行的程序就会被粗暴地中断,还没来得及存人外存储器的数据和程序就会丢失,这损失往往是无法估量的。为了防止这种情况发生,就要给计算机配备应急的不间断电源。当发生停电事故时,立即启动不间断电源,由它来继续向计算机供电,以便操作人员有时间处理好存储数据,保护程序等工作,避免因掉电造成重大损失。

不过,也有不需要这样特殊环境的计算机——微型计算机或个人计算机。这种微型计算机体积很小,对环境要求不高,在一般条件稍好一些的办公室里就可使用,无需专门的特殊机房。这种微型机使用方便、操作简单,不需要特殊维护。它还有一个突出的优点,就是价格便宜。由于它的这些优点,目前,微机已在各行各业得到广泛的推广和应用。

兼容机

稍微留心一下有关计算机的广告,就可以看到这样的字眼:本机与什么什么兼容,或本机为什么什么的兼容机。什么叫兼容?为什么有兼容机?

随着计算机的发展和推广应用,生产计算机的厂家、经营计算机的公司越来越多。由于技术实力、经济实力、市场信誉等多方面的原因,只有少数公司打开了市场。其中,IBM公司就是占据计算机市场统治地位的大公司之一,它的用户遍及世界各地。在这种情况下,别的中、小公司想要另辟市场已经非常困难。为了求得生存,分享部分IBM的计算机相似的计算机产品。即是说,他们的计算机与IBM的产品兼容。

计算机的兼容,是指两种或多种机型的计算机主机或外设之间,不加改动或稍加改动就可以互相替换,互相连接。软件方面,在一种型号的计算机上成功运行的程序,不加修改或稍加修改便可以在它的兼容机上运行。这样,生产兼容机的公司或厂家,就可以在它们的计算机上运行与之兼容的计算机软件,而不必自己去另外开发软件。这就大大节约了开发软件的时间和昂贵的软件开发费用,把精力和财力集中在硬件生产上。这样做的结果,使一些中、小公司得以生存发展。从市场效益这个角度来说;这样做对被兼容的大公司的利益是一种侵犯;从工程技术这个角度来看,这样做使计算机科学领域的专家学者、工程技术人员可以利用已经成熟的软件系统和其他有关技术,加快新机器的研制,提高系统性能价格比。从长远来看,兼容技术将促使计算机工业向系列化、标准化的方向发展。

计算机干活

计算机会干活,会干很多各种各样的活。正是基于这一点,我们才逐渐实现了,并且在继续实现着各个行业、各个领域的自动化。我们通常所说的自动化,其实就是在特定的场合用计算机代替人,让它去控制、操作本应由人来操作的机械、设备等等。让我们来看看计算机是怎么干活的。

实际上,计算机本身只会按程序教给它的去“思考”,去“发号施令,不会干活。它对机器设备的控制和操作,是通过给它配备的辅助设备来完成的。让我们举一个简单的例子来说明这个问题。比方说,水泥生产的自动化,即是用计算机来控制水泥的加工过程,让它确定什么时间应该加料,加什么料,加多少,烧结窑里的温度应该多高等等。这时候,就要给计算机配上一些“助手”,来帮助它完成任务。我们把这些助手叫做辅助设备。比方说,配上一个分析仪器,由它定时检测水泥的酸碱度、强度等分析指标,然后把结果通过与计算机之间的接口报告给计算机。计算机内运行着的专用程序接到报告后立即进行分析,看诸项指标是否合格,如不合格,便立即调整进料的配比。这种调整是计算机通过对它的另一个辅助设备——电子皮带秤发号施令来实现的。用计算机输出的脉冲信号去驱动控制接口电路,以此来调整皮带秤进料口大小,达到控制进料多少的目的。

除此之外,还需在烧结窑内装一些温度传感器,用它们来随时监测窑内温度。它们把测得的信号及时报告计算机,计算机便不断地计算、分析,看窑内温度是否合适。如果发现温度过高或过低,计算机便返回一些控制信号给影响窑温的设备,以调整窑温到合适的温度。

人们正是通过类似的这样一些设备和手段,实现计算机对生产过程的控制。

一般来说,我们把前边所说的温度传感器和分析仪器这样的负责信息采集的设备,叫做一次仪表,它们负责把采来的物理信号变成电压模拟信号,然后通过二次仪表——一般是一个模/数转换器,把一次仪表送来的模拟信号转换成数值信号送给计算机,计算机处理完后再通过数/模转换器把“命令”转换成模拟量,或者输出一个开关量去控制相应的辅助设备,比如步进电机、继电器等等,以此来控制直接作用于生产过程的设备的动作。一般来说,凡是可以用传感器稳定可靠地采集数据的那样一些过程,都可以用计算机柄上相应的辅助设备,它就可以干活。关键在于辅助设备,计算机本身是不成问题的。

计算机的智力

我们经常可以看到或听到一些这样的报道:用计算机又实现了对什么什么过程的控制;用计算机驾驶飞机、跟踪导弹、监测卫星;用计算机给学生上课、给病人看病、与棋手下棋;用计算机辅助设计、辅助制造;用计算机辅助决策等等。计算机家族里的机器人还可以代替人类去干那些危险的、不适合人类干的活,到那些危险的、人类不能去的地方去探险。如此看来,计算机既聪明又勇敢,什么都行,什么都会,具有超人的智慧和力量。况且,在计算机技术飞速发展的今天,几乎天天有新东西出现;天天有更先进的计算机软、硬件新产品问世。照此发展下去,有一天,计算机的智力不是要超过人的智力了吗?为了找到这个问题的答案,让我们先来看看计算机的智力是从哪里来的。