
1.1 计算机概述
随着社会的发展,各种应用领域对先进工具的迫切需要,是促使现代计算机诞生的根本动力。自从第一台数字计算机诞生以来,计算机科学已成为快速发展的学科之一,尤其是微型计算机的出现及计算机网络的发展,使得计算机及其应用已经渗透到社会的各个领域,有力地推动了社会信息化的发展,掌握和使用计算机已成为当今社会人们必不可少的一种技能。
1.1.1 计算机的诞生和发展
计算机技术是人类历史上发展最快的技术之一,它的出现对人类的社会活动产生了巨大的影响,它是一项巨大的技术革命。元器件制作工艺水平的不断提高为计算机的发展奠定了坚实的基础。计算机按其使用的主要电子元器件可划分为4代。
1.第一代计算机(1946—1957年)
1946年2月,美国出于军事目的由宾夕法尼亚大学研制出世界上第一台电子数字积分计算机(ENIAC),如图1-1所示。这台计算机从1946年2月开始投入使用,到1955年10月共使用了9年多。ENIAC由18 000多个电子管、1 500多个继电器组成,重30多顿,占地面积约150m2,每小时耗电近150k W,而每秒却只能进行5 000次加法运算。但是,它的出现是人类历史上的一次巨大飞跃,标志着第一代计算机时代的开始,在计算机发展史上是一个重要的里程碑。
ENIAC体积庞大,并且属于程序外插型,使用起来并不方便。计算机运算几分钟或几小时,就需要用几小时到几天来编制程序。当ENIAC的研制接近成功时,数学家冯·诺依曼(见图1-2)得知这一消息。他在仔细研究过ENIAC的优缺点后,在众人的协助下,于1946年给出了世界上第二台计算机——离散变量自动电子计算机(Electronic Discrete Variable Computer,EDVAC)的设计方案,该设计方案的主要思想有以下几点。
①计算机包括运算器、控制器、存储器、输入设备和输出设备5个部分。
②为提高运算速度首次在电子计算机中采用了二进制,并实现了程序存储。
③全部运算过程真正实现自动化。
冯·诺依曼所提出的计算机体系结构被称为冯·诺依曼体系结构,一直沿用至今。

图1-1 ENIAC

图1-2 冯·诺依曼
第一代计算机的主要特征是采用电子管作为主要元器件。第一代计算机体积大、运算速度低、存储容量小、可靠性差,编制程序用机器语言或汇编语言,几乎没有什么软件配置,主要用于科学计算。尽管如此,这一代计算机却奠定了计算机的技术基础,如二进制、自动计算及程序设计等,对以后计算机的发展产生了深远的影响。其代表机型有IBM650(小型机)、IBM709(大型机)。
2.第二代计算机(1958—1964年)
第二代计算机的主要特征是采用晶体管作为主要元器件。这不仅使得计算机的体积缩小了很多,同时机器的稳定性也得到了增强,运算速度得到了大大的提高,而且计算机的能耗减小、价格降低。与此同时,计算机软件也有了较大的发展,出现了Fortran、ALGOL、COBOL等高级语言,降低了程序设计的复杂性;软件配置开始出现,外部设备也由几种增加到几十种。除了科学计算外,计算机还用于数据处理和事物处理、工业控制等方面。其代表机型有IBM 7094(见图1-3)、CDC7600。

图1-3 IBM7094
3.第三代计算机(1965—1970年)
第三代计算机是集成电路计算机。随着固体物理技术的发展,集成电路工艺已经可以在几平方毫米的单晶硅片上集成由十几个甚至上百个电子元件组成的逻辑电路。第三代计算机的主要特征是使用半导体中小规模集成电路作为主要元器件。第三代计算机已经开始采用性能优良的半导体存储器取代磁芯存储器,在存储容量、速度和可靠性方面都有了较大提高,运算速度提高到每秒几十万到几百万次基本运算。第三代计算机的体积更小,功耗和价格进一步下降,寿命更长。同时,计算机软件技术进一步发展,高级程序设计语言在这个时期有了很大发展,尤其是操作系统的逐步成熟是第三代计算机的显著特点。其中具有影响的是IBM公司研制的IBM-360计算机系统,如图1-4所示。

图1-4 IBM-360
4.第四代计算机(1971年至今)
第四代计算机的主要特征是采用大规模和超大规模集成电路作为主要元器件。第四代计算机的主存储器采用集成度很高的半导体存储器,运算速度可达到每秒几千万次甚至千万亿次基本运算。在软件方面,出现了数据库系统、分布式操作系统等,应用软件的开发得到很大的发展,已逐步成为一个庞大的现代产业,网络软件大量涌现,计算机网络得到了普及。目前使用的微型计算机就是这类计算机。
5.各代计算机发展的主要特征
各代计算机的主要特征如表1-1所示。
表1-1 各代计算机的主要特征

1.1.2 计算机的分类
计算机的种类繁多,分类的方法也很多。可以按照处理的对象划分,也可以按照设计的目的、用途等来划分。目前惯用的分类方法是根据美国电气与电子工程师协会(Institute of Electrical and Electronics Engineers,IEEE)提出的标准来划分的,即把计算机划分为巨型机、大型机、小型机和微型计算机等。
1.巨型机
巨型机也称为超级计算机,其运算速度最快已达到每秒千万亿次,一般用于国防尖端技术和现代科学计算领域。研制巨型机是衡量一个国家经济实力和科学水平的重要标志,只有少数几个国家能够生产。
2.大型机
大型机具有较高的运算速度和较大的存储容量,一般用于科学计算、数据处理或作为网络服务器。IBM、DEC、富士通、日立、NEC等是大型机的主要生产商。随着微型计算机与网络的迅速发展,大型机正在逐渐被高档微型计算机群所取代。
3.小型机
大型机价格昂贵、操作复杂,通常只有大企业才有能力购买。在集成电路推动下,20世纪60年代DEC推出了一系列小型机,如PDP-11系列、VAX-11系列,惠普公司推出过1000、3000系列等。小型机通常用于部门计算,同样它也受到高档微型计算机的挑战。
4.微型计算机
微型计算机又称为个人计算机,简称微机,是目前发展较快、应用较广泛的一种计算机。它的体积较小,如个人计算机(Personal Computer,PC)、笔记本电脑、掌上电脑等。
1971年美国的Intel公司成功地在一个芯片上实现了中央处理器的功能,制成了世界上第一片4位微处理器单元(Microprocessor Unit, MPU),也称Intel 4004,并由它组成了世界上第一台微型计算机MCS-4,如图1-5所示。

图1-5 MCS-4
美国IBM公司采用Intel公司生产的微处理器芯片,自1981年推出IBMPC后,又推出了IBMPCXT\、IBMPC286、386等一系列微机,由于其功能齐全、软件丰富、价格便宜,很快便占据了微机市场的主导地位。
微机从出现到现在不过四十几年,因其小、巧、轻、便,价格便宜,其应用范围急剧扩展,从太空中的航天器到家庭生活,从工厂的自动控制到办公自动化,以及商业、服务业、农业等,遍及社会各个领域。微机的出现使得计算机真正面向个人,成为大众化的信息处理工具。
1.1.3 计算机的特点
1.运算速度快
运算速度快是计算机最显著的特点之一。所谓运算速度是指计算机每秒处理机器语言指令的条数。目前,超级计算机的运算速度已达到每秒几千万亿次运算,即使是微机,其运算速度也已经大大超过了早期大型计算机的运算速度。如由我国国防科学技术大学研制的“天河二号”计算机(见图1-6)它的峰值速度和持续速度分别为每秒5.49亿亿次和每秒3.39亿亿次。这组数字意味着,“天河二号”计算机运算1h,相当于13亿人同时用计算器计算1000年。

图1-6 “天河二号”计算机
2.计算精度高
在科学研究和工程设计中,对计算的结果精度有很高的要求。一般的计算工具只能达到几位有效数字,而计算机对数据的结果精度可达到十几位、几十位有效数字,根据需要甚至可达到更高的精度。
3.存储容量大
计算机的存储器可以存储大量数据,这使计算机具有了“记忆”功能。目前计算机的存储容量越来越大,已高达“吉”数量级的容量。计算机具有“记忆”功能,是它区别于传统计算工具的一个重要标志。
4.具有逻辑判断功能
计算机的运算器除了能够完成基本的算术运算外,还具有进行比较、判断等逻辑运算的功能。这种能力是计算机处理逻辑推理问题的前提。
5.自动化程度高,通用性强
由于计算机的工作方式是将程序和数据先存放在机内,工作时按程序规定的操作,一步一步地自动完成,一般无须人工干预,因而自动化程度高。这一特点是一般计算工具所不具备的。
计算机通用性的特点表现在几乎能求解自然科学和社会科学中一切类型的问题,能广泛地应用于各个领域。
1.1.4 计算机的应用
计算机及其应用改变着传统的工作、学习和生活方式,推动着信息社会的发展,已渗透到社会的各个方面。未来计算机将进一步深入人们的生活,将更加人性化,给人们的生活提供更大的便利。归纳起来,计算机的应用领域主要包括以下几个方面。
1.科学计算
早期的计算机主要用于科学计算。目前科学计算仍然是计算机应用的一个重要领域,如高能物理、工程设计、地震预测、气象预报、航天技术等。由于计算机具有高运算速度和精度以及逻辑判断能力,因此出现了计算力学、计算物理、计算化学、生物控制论等新的学科。
2.过程检控
利用计算机对工业生产过程中的某些信号自动进行检测,并把检测到的数据存入计算机,再根据需要对这些数据进行处理,这样的系统称为计算机检测系统。特别是仪器仪表引进计算机技术后所构成的智能化仪器仪表,将工业自动化推向了一个更高的水平。
3.信息管理
信息管理是目前计算机应用较广泛的一个领域,可以利用计算机来加工、管理与操作多种形式的数据资料,如企业管理、物资管理、报表统计、账目计算、信息情报检索等。许多机构纷纷建设自己的管理信息系统(Management Information System,MIS),生产企业也开始采用制造物资需求计划(Material Requirement Planning,MRP)软件,商业流通领域则逐步使用电子数据交换(Electronic Data Interchange,EDI)系统,即无纸贸易。
4.辅助系统
计算机辅助设计、制造、测试就是用计算机辅助进行工程设计、产品制造、性能测试。
①计算机辅助设计(Computer Aided Design,CAD)是指利用计算机及其图形设备帮助设计人员进行设计工作。在工程和产品设计中,计算机可以帮助设计人员完成计算、信息存储和制图等工作。在设计中通常要用计算机对不同方案进行大量的计算、分析和比较,以决定最优方案。各种设计信息,不论是数字的、文字的或图形的,都能存放在计算机的内存或外存中,并能快速地检索。设计人员通常用草图开始设计,而将草图变为工作图的繁重工作可以交给计算机完成。利用计算机可以进行与图形的编辑、放大、缩小、平移和旋转等有关的图形数据加工工作。图1-7所示为建筑模型CAD设计图。

图1-7 建筑模型CAD图
②计算机辅助制造(Computer Aided Manufacturing,CAM)是指在机械制造业中,利用电子数字计算机通过各种数值控制机床和设备,自动完成离散产品的加工、装配、检测和包装等制造过程。
③计算机辅助测试(Computer Aided Testing,CAT)是指利用计算机协助对学生的学习效果进行测试和学习能力估量,一般分为脱机测试和联机测试两种方法。
5.人工智能
人工智能是指开发一些具有人类某些智能的应用系统,用计算机来模拟人的思维判断、推理等智能活动,使计算机具有自适应和逻辑推理的功能,如计算机推理、智能学习系统、专家系统、机器人等,帮助人们学习和完成某些推理工作。
6.语言翻译
1947年,美国数学家、工程师沃伦·韦弗与英国物理学家、工程师安德鲁·布思提出了用计算机进行翻译(简称“机译”)的设想,机译从此步入历史舞台。机译分为文字机译和语音机译。机译消除了不同文字和语言间的隔阂,但机译的质量长期以来一直是个问题,尤其是译文质量,离理想目标仍相差甚远。我国数学家、语言学家周海中教授认为,在人类尚未明了大脑是如何进行语言的模糊识别和逻辑判断的情况下,机译要想达到“信、达、雅”的程度是不可能的。