二、历史fficeffice" />
第一台加法机,数字计算机的先驱,是1642年由法国科学家、数学家兼哲学家布莱斯•帕斯卡设计的。这个装置使用了一系列有10个齿的轮子,每个齿代表从0到9的一个数字。轮子互相连接,从而通过按照正确的齿数向前移动轮子,就可以将数字彼此相加。在17世纪70年代,德国哲学家兼数学家戈特弗里德•威廉•莱布尼兹对这台机器进行了改良,设计了一台也能做乘法的机器。
法国发明家约瑟夫―玛丽•雅卡尔,在设计自动织机时,使用了穿孔的薄木板来控制复杂图案的编织。在19世纪80年代期间,美国统计学家赫尔曼•何勒里斯,想出了使用类似雅卡尔的木板那样的穿孔卡片来处理数据的主义。通过使用一种将穿孔卡片从电触点上移过的系统,他得以为1890年的美国人口普查汇编统计信息。
1、分析机
也是在19世纪,英国数学家兼发明家查尔斯•巴比奇,提出了现代数字计算机的原理。他构想出旨在处理复杂数学题的若干机器,如差分机。许多历史学家认为巴比奇及其合伙人,数学家奥古斯塔•埃达•拜伦,是现代数字计算机的真正先驱。巴比奇的设计之一,分析机,具有现代计算机的许多特征。它有一个以一叠穿孔卡片的形式存在的输入流、一个储存数据的“仓库”、一个进行算术运算的“工厂”和一个产生永久纪录的打印机。巴比奇未能将这个想法付诸实践,尽管在那个时代它在技术上很可能是可行的。
2、早期的计算机
模拟计算机是在19世纪末期开始制造的。早期型号是靠转动的轴和齿轮来进行计算的。用任何其他方法都难以解答的方程,可以用这样的机器来求其近似数值。开尔文勋爵制造了一台机械潮汐预报器,这实际上就是一台专用模拟计算机。第一次和第二次世界大战期间,机械模拟计算系统以及后来的电动模拟计算系统,被用作潜艇上的鱼雷航线预测器和飞机上的轰炸瞄准具的控制器。人们还设计了另一个系统,用于预测密西西比河流域春天的洪水。
3、电子计算机
第二次世界大战期间,以伦敦北面的布莱切利公园为工作地点的一组科学家和数学家,制造了最早的全电子数字计算机之一:“巨人”。到1943年12月,这个包含了1500个真空管的“巨人”开始运转了。它被以艾伦•图灵为首的小组用于破译德国用恩尼格码加密的无线电报,他们的尝试大部分是成功的。
除此而外,在美国,约翰•阿塔纳索夫和克利福德•贝里早在1939年就在艾奥瓦州立学院制造了一台原型电子机。这台原型机和后来的研究工作都是悄悄完成的,而且后来因1945年电子数字积分计算机(ENIAC)的研制而显得相形见绌。ENIAC计算机被授予了专利。但是,数十年后,在1973年,当该机被揭露吸收了在阿塔纳索夫―贝里计算机中首次使用的原理后,这项专利被废除。
ENIAC计算机(见图ffice:smarttags" />1A―1)含有18,000个真空管,具有每分钟几百次的运算速度,但是最初程序是通过导线传送到处理器内的,必须由人工更改。根据美籍匈牙利数学家约翰•冯•诺伊曼的想法,后来制造的机器带有一个程序存储器。指令像数据一样存储在“存储器”中,使计算机在执行过程中摆脱了纸带阅读器的速度限制,并使问题在不给计算机重新接线的情况下得以解决。
20世纪50年代末,晶体管在计算机中的应用,标志着比真空管机器更小、更快、更通用的逻辑元件的出现。由于晶体管使用的功率小得多,寿命也长得多,仅这项发展本身就导致了被称之为第二代计算机的改良机器的产生。元件变小了,元件的间距也变小了,而且系统的制造成本也变得低得多。
4、集成电路
20世纪60年代末,集成电路得到采用,从而有可能将许多晶体管制作在一块硅衬底上,集体管之间以覆镀固定的导线相连接。集成电路导致价格、尺寸和故障率的进一步降低。20世纪70年代中期,随着大规模集成电路和后来的超大规模集成电路(微芯片)的采用,成千上万个彼此相连的晶体管被蚀刻在一块硅衬底上,于是微处理器成为现实。
那么,再回过头来看看现代计算机处理开关值的能力:20世纪70年代的计算机一般一次能够处理8个开关值。也就是说,在每个循环中,它们能处理8个二进制数字或比特的数据。8个比特为一组,称为一个字节;每个字节包含着256个开与关(或0与1)的可能模式。每个模式相当于一条指令、一条指令的一部分或者一个特定的数据类型,如一个数字、一个字符或者一个图形符号。例如,11010010这个模式可能是二进制数据——在这种情况下,代表210这个十进制数字——或者它可能是一条指令,告诉计算机将存储在其交换设备中的数据与存储在存储芯片某个位置的数据进行比较。
一次能处理16、32和64比特数据的处理器的研制,提高了计算机的速度。一台计算机能够处理的全部可识别模式——操作总清单——被称为其指令集。随着现代数字计算机的不断发展,这两个因素——能够同时处理的比特数和指令集的大小——在继续增长。
三、硬件
不论尺寸大小,现代数字计算机在概念上都是类似的。然而,根据成本与性能,它们可分为几类:个人计算机或微型计算机,一种成本相当低的机器,通常只有桌面大小(尽管“膝上型计算机”小到能够放入公文包,而“掌上型计算机”能够放入口袋);工作站,一种具有增强的图形与通信能力、从而使其对于办公室工作特别有用的微型计算机;小型计算机,一般就个人使用而言太昂贵,其性能适合于工商企业、学校或实验室;以及大型机,一种大型的昂贵机器,具有满足大规模工商企业、政府部门、科研机构或者诸如此类机构需要的能力(其中体积最大、速度最快的称为巨型计算机)。
一台数字计算机不是单一的机器。确切地说,它是由5个不同的要素组成的系统:(1)中央处理器;(2)输入设备;(3)存储设备;(4)输出设备;以及(5)被称作总线的通信网络,它将系统的所有要素连接起来并将系统与外界连接起来。
四、编程
一个程序就是一系列指令,告诉计算机硬件对数据执行什么样的操作。程序可以内嵌在硬件本身里,或以软件的形式独立存在。在一些专业或“专用”计算机中,操作指令被嵌入其电路里;常见的例子有计算器、手表、汽车发动机和微波炉中的微型计算机。另一方面,通用计算机尽管含有一些内嵌的程序(在只读存储器中)或者指令(在处理器芯片中),但依靠外部程序来执行有用的任务。计算机一旦被编程,就只能做在任何特定时间控制它的软件所允许它做的事情。广泛使用的软件包括一系列各种各样的应用程序——告诉计算机如何执行各种任务的指令。
五、未来的发展
计算机发展的一个持续不断的趋势是微小型化,亦即将更多的电路元件压缩在越来越小的芯片空间上的努力。研究人员也在设法利用超导性来提高电路的功能速度。超导性是在超低温条件下在某些材料中观察到的电阻减少现象。
计算机发展的另一个趋势是“第五代”计算机的研制工作,亦即研制可以解决复杂问题而且其解决方法或许最终会与“创造性的”这一形容名副其实的计算机,理想的目标是真正的人工智能。正在积极探索的一条道路是并行处理计算,亦即利用许多芯片来同时执行数个不同的任务。一种重要的并行处理方法是模仿神经系统结构的神经网络。另一个持续不断的趋势是计算机联网的增加。计算机联网现在使用由卫星和电缆链路构成的世界范围的数据通信系统,来将全球的计算机连在一起。此外,大量的研究工作还投入在探索“光”计算机的可能性上——这种硬件处理的不是电脉冲而是快得多的光脉冲。
|