计算机发展史分类和应用领域.docx
《计算机发展史分类和应用领域.docx》由会员分享,可在线阅读,更多相关《计算机发展史分类和应用领域.docx(19页珍藏版)》请在冰豆网上搜索。
计算机发展史分类和应用领域
第1章计算机基础知识
基础
本章主要内容
:
.计算机发展史、分类和应用领域
.数值、字符、汉字和图像编码
.计算机组成和原理
.计算机安全基础知识
1.1计算机概述
计算机技术的迅猛发展,促使人类走向丰富多彩的信息社会。
信息时代的生产方式和生活方式具有数字化、集成化、智能化、移动化、个性化等特点。
1.1.1计算机的发展
世界上第一台电子数字式计算机ENIAC于1946年2月15日诞生在美国宾夕法尼亚大学。
它奠定了电子计算机的发展基础,开辟了一个计算机科学技术的新纪元,标志着人类第三次产业革命的开始。
ENIAC诞生后短短的几十年间,计算机的发展突飞猛进。
主要电子器件相继使用了真空电子管,晶体管,中、小规模集成电路和大规模、超大规模集成电路,引起计算机的几次更新换代。
每一次更新换代都使计算机的体积和耗电量大大减小,功能大大增强,应用领域进一步拓宽。
特别是体积小、价格低、功能强的微型计算机的出现,使得计算机迅速普及,进入了办公室和家庭,在办公自动化和多媒体应用方面发挥了很大的作用。
目前,计算机的应用已扩展到社会的各个领域。
在推动计算机发展的众多因素中,电子元器件的发展起着决定性的作用,计算机系统结构和计算机软件技术的发展也起了重大的作用。
从生产计算机的主要技术来看,计算机的发展过程可以划分为四个阶段,如表1-1所示。
表1-1计算机发展历程
发展阶段
时间
电子
元器件
存储器
内存
容量
运算速度
软件
第一代
1946年—
1958年
电子管
内存采用水银延迟线;外存采用磁鼓、纸带、卡片等
几千
字节
每秒几千次到几万次基本运算
机器语言、汇编语言
续表
发展阶段
时间
电子
元器件
存储器
内存
容量
运算速度
软件
第二代
1958年—1964年
晶体管
磁芯、磁盘、磁带等
几十万
字节
每秒几十万次基本运算
FORTRAN、
ALGOL-60、
COBOL
第三代
1964年—1975年
集成电路
半导体存储器
几百K
字节
每秒几十万到几百万次基本运算
操作系统逐渐
成熟
第四代
1975年至今
大规模集
成电路
集成度很高的半导体
存储器
几百兆
字节
每秒几百万次甚至上亿次基本运算
数据库系统、分
布式操作系统等,应用软件的开发
随着计算机应用的广泛深入,又向计算机技术本身提出了更高的要求。
当前,计算机的发展表现为4种趋向:
巨型化、微型化、网络化和智能化。
1.1.2计算机的分类
按照1989年由IEEE科学巨型机委员会提出的运算速度分类法,计算机可分为巨型机、大型机、小型机、工作站、微型计算机和网络计算机。
1.巨型机
巨型机又称超级计算机,是所有计算机类型中价格最贵、功能最强的一类计算机,其浮点运算速度已达每秒万亿次。
用于国防尖端技术、空间技术、大范围长期性天气预报、石油勘探等方面。
这类计算机在技术上朝两个方向发展:
一是开发高性能器件,特别是缩短时钟周期,提高单机性能;二是采用多处理器结构,构成超并行计算机,通常由100台以上的处理器组成超并行巨型计算机系统,它们同时解算一个课题,来达到高速运算的目的。
美国、日本是生产巨型机的主要国家,俄罗斯及英国、法国、德国次之。
我国在1983年、1992年、1997年分别推出了银河Ⅰ、银河Ⅱ和银河Ⅲ,进入了生产巨型机的行列。
2.大型通用机
大型通用机相当于国内常说的大型机和中型机,国外习惯上称为主机。
近年来大型机采用了多处理、并行处理等技术,其内存一般为1GB以上,运行速度可达300~750MIPC(每秒执行3亿至7.5亿条指令)。
大型机具有很强的管理和处理数据的能力,一般在大企业、银行、高校和科研院所等单位使用。
3.小型机
小型机的机器规模小、结构简单、设计试制周期短,便于及时采用先进工艺技术,软件开发成本低,易于操作维护。
它们已广泛应用于工业自动控制、大型分析仪器、测量设备、企业管理、大学和科研机构等,也可以作为大型与巨型计算机系统的辅助计算机。
近年来,小型机的发展也引人注目,特别是出现了RISC(ReducedInstructionSetComputer,精简指令系统计算机)体系结构。
RISC的思想是把那些很少使用的复杂指令用子程序来取代,将整个指令系统限制在数量甚少的基本指令范围内,并且绝大多数指令的执行都只占一个时钟周期,甚至更少,优化编译器,从而提高机器的整体性能。
4.微型机
微型机技术在近十年内发展迅猛,更新换代快。
微型机已经应用于办公自动化、数据库管理、图像识别、语音识别、专家系统,多媒体技术等领域,并且开始成为城镇家庭的一种常规电器。
现在除了台式微型机外,还有膝上型、笔记本、掌上型、手表型等微型机。
5.工作站
工作站是一种高档微型机系统。
它具有较高的运算速度,具有大型机或小型机的多任务、多用户能力,且兼有微型机的操作便利和良好的人机界面。
其最突出的特点是具有很强的图形交互能力,因此在工程领域特别是计算机辅助设计领域得到迅速应用。
典型产品有美国Sun公司的Sun系列工作站。
6.网络计算机
专为计算机网络作为客户机使用的计算机,简称NC,它是在互联网充分普及和Java语言推出的情况下提出的一种全新概念的计算机。
根据IBM、Oracle和Sun公司共同制定的网络计算机参考标准,NC是一种使用基于Java技术的瘦客户机系统,它提供了一个混合系统,在这个混合系统中,根据不同的应用建立方式,某些应用在服务器上执行,某些应用在客户机上执行。
1.1.3计算机的应用
计算机主要具备以下几方面的特点:
(1)运算速度快
计算机的CPU采用超大规模集成电路,其运算速度远非其他计算工具所能比拟,而且,其运算速度还以每隔几年提高一个数量级的水平不断发展。
(2)存储容量大
存储器不但能够存储大量的信息,而且能够快速准确地写入或读出这些信息。
计算机的应用使得从浩如烟海的文献、资料、数据中查找信息并且处理这些信息成为容易的事情。
例如,一台普通PC机就可以把一个大型图书馆内的所有文献资料保存起来,并且能够实现快速查找。
(3)具有逻辑判断能力
计算机能够根据各种条件来进行判断和分析,从而决定以后的执行方法和步骤。
还能够对文字、符号、数字的大小、异同等进行判断和比较,从而决定怎样处理这些信息。
计算机被称为“电脑”,便是源于这一特点的。
(4)高度自动化
计算机内部的操作运算是根据人们预先编制的程序自动控制执行的。
只要把包含一连串指令的处理程序输入计算机,计算机便会依次取出指令,逐条执行,完成各种规定的操作,直到得出结果为止。
另外,计算机还具有运算精度高、工作可靠等优点。
正是由于具备这些优点,计算机的应用十分广泛,根据工作方式的不同大致可以分为以下几个方面:
(1)数值计算
在科学研究和工程设计中,存在着大量繁琐、复杂的数值计算问题,穷尽几代人的精力也无法得到最终的结果,因此人们发明了计算机。
数值计算是计算机的第一个应用领域,高速度,高精度地解算复杂的数学问题正是电子计算机的专长,时至今日,它仍然是计算机应用的一个重要领域。
(2)数据处理
数据处理又叫做非数值计算,就是利用计算机来加工、管理和操作各种形式的数据资料。
与数值计算不同的是,数据处理着眼于对大量的数据进行综合和分析处理。
一般不涉及复杂的数学问题,只是要求处理的数据量极大而且经常要求在短时间内处理完毕。
例如企业管理、物资管理、报表统计、账目计算、信息情报检索等。
近年来出现的管理信息系统(MIS)、制造资源规划软件(MRP)、电子信息交换系统(EDI)等都属于数据处理领域。
(3)实时控制
实时控制也叫做过程控制,就是用计算机对工业生产过程中的某些信号自动进行检测,并把检测到的数据存入计算机,再根据需要对这些数据进行处理。
实时控制不仅可提高生产自动化水平,同时也能提高产品的质量、降低成本、减轻劳动强度、提高生产效率。
例如,仪器仪表引进计算机技术后所构成的智能化仪器仪表,将工业自动化推向了一个更高的水平。
实时控制广泛应用于化工、电子、钢铁、石油、火箭和航天等领域。
(4)计算机辅助系统
计算机辅助系统包括计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助教学(CAI)等。
计算机辅助设计(CAD)是指利用计算机来帮助设计人员进行工程设计,以提高设计工作的自动化程度,节省人力和物力。
目前,这种技术已广泛地应用于机械、船舶、飞机和大规模集成电路版图等方面的设计。
利用CAD技术可以提高设计质量,缩短设计周期,提高设计自动化水平。
例如,计算机辅助制图系统提供了一些最基本的作图元素和命令,在这个基础上可以开发出适合不同部门应用的图库。
计算机辅助制造(CAM)是指利用计算机进行生产设备的管理、控制与操作,从而提高产品质量、降低生产成本、缩短生产周期,大大改善制造人员的工作条件。
计算机辅助测试(CAT)是指利用计算机进行复杂而大量的测试工作。
计算机辅助教学(CAI)指利用计算机帮助教师讲授和帮助学生学习的自动化系统,使学生能够轻松自如地从中学到所需要的知识。
(5)模式识别与智能系统
是一种计算机在模拟人的智能方面的应用。
例如,根据频谱分析的原理,利用计算机对人的声音进行分解、合成,使机器能辨识各种语音,或合成并发出类似人的声音。
又如,利用计算机来识别各类图像、甚至人的指纹等。
综上所述,计算机可以自动高效地处理输入的各类信息,如数值、文字、图像、语音等,然后输出结果。
早期的计算机由于受自身性能等各方面条件的限制,其应用领域比较单一,主要集中在数值计算。
随着业务需求和计算机技术的进步,计算机已经渗透到社会的各个领域,并且朝着综合性应用的方向发展。
例如,一个大型企业的信息管理系统(MIS系统),可以包括多个子系统,如销售管理系统、生产管理系统、财务管理系统、人事管理系统、工程设计系统等,有些子系统主要是用来进行数据处理的,有些主要是用来进行自动控制的,有些既有复杂的数值计算功能,又有强大的数据处理能力。
1.2数据在计算机中的表示
计算机的基本功能是对数进行加工和处理。
数在计算机中是以器件的物理状态来表示的。
一个器件的两种不同的稳定状态就可以用来表示一位二进制数。
因此,二进制的表示最简单而且可靠。
另外,二进制的运算规则也最简单。
所以计算机中的数用二进制0和1表示。
1.2.1数制转换
1.进位计数制
按进位的原则进行的计数方法称为进位计数制。
在采用进位计数的数字系统中,如果用r个基本符号(例如0,1,2,…,r-1)表示数值,则称其为基r数制(Radix-rNumberSystem),r称为该数制的基(Radix)。
如日常生活中常用的十进制数,就是r=10,即基本符号为0,1,2,…,9。
如取r=2,即基本符号为0、1,则为二进制数。
对于不同的数制,它们的共同特点是:
(1)每一种数制都有固定的符号集:
如十进制数制,其符号有10个:
0,1,2,…,9;二进制数制,其符号有两个:
0和1。
(2)都是用位置表示法:
即处于不同位置的数符所代表的值不同,与所在位置的权值有关。
例如:
十进制可表示为:
可以看出,各种进位计数制中的权的值恰好是基数的某次幂。
因此,对任何一种进位计数制表示的数都可以写出按其权展开的多项式之和,任意一个r进制数N可表示为:
式中的di为该数制采用的基本数符,ri是位权(权),r是基数,表示不同的进制数;m为整数部分的位数,k为小数部分的位数。
在十进位计数制中,是根据“逢十进一”的原则进行计数的。
一般地,在基数为r的进位计数制中,是根据“逢r进一”的原则进行计数的。
在微机中,常用的是二进制、八进制和十六进制,如表1-2所示。
其中,二进制用得最为广泛。
表1-2计算机中常用的几种进制数的表示
进位制
二进制
八进制
十进制
十六进制
规则
逢二进一
逢八进一
逢十进一
逢十六进一
基数
r=2
r=8
r=10
r=16
符号
0,1
0,1,…,7
0,1,…,9
0,1,…,9,A,…,F
位权
2i
8i
10i
16i
表示形式
B(BinarySystem)
O(OctalSystem)
D(DecimalSystem)
H(HexadecimalSystem)
2.r进制数转换为十进制数
r进制数转换为十进制数只要将各位数码乘以各自的权值累加即可。
例如:
3.十进制数转换为r进制数
(1)十进制整数转换为r进制整数——除r取余法
将十进制整数不断除以r取余数,直到商为0,余数从右到左排列,首次取得的余数放在最右边。
(2)十进制小数转换为r进制小数——乘r取整法
将十进制小数不断乘以r取整数,直到小数部分为0或达到所求的精度为止(小数部分可能永远不会得到0);所得整数从小数点自左向右排列,首次取得的整数在最左边。
(3)如果一个数既有整数又有小数,可以分别转换后再合并。
例如,把十进制数101.6875转换成二进制数
整数部分:
小数部分:
转换结果:
4.r进制数之间的转换
由于二进制、八进制和十六进制之间存在特殊关系:
一位八进制数相当于三位二进制数;一位十六进制数相当于四位二进制数,因此转换方法比较容易,如表1-3所示。
表1-3二进制与八进制、十六进制之间的关系
八进制
对应二进制
十六进制
对应二进制
十六进制
对应二进制
0
000
0
0000
8
1000
续表
八进制
对应二进制
十六进制
对应二进制
十六进制
对应二进制
1
001
1
0001
9
1001
2
010
2
0010
A
1010
3
011
3
0011
B
1011
4
100
4
0100
C
1100
5
101
5
0101
D
1101
6
110
6
0110
E
1110
7
111
7
0111
F
1111
根据表中的关系,二进制转换八进制时,以三位为一组,不足三位时补0;二进制转换十六进制时,以四位为一组,不足四位补0。
反之,八进制或十六进制转换为二进制时只要一位扩展为三位或四位即可。
例如,
1.2.2数值的表示
在计算机内,数只有“0”和“1”两种形式,所以数的正负号也必须以“0”和“1”表示。
1.机器数
通常把一个数的最高位定义为符号位,用0表示正,1表示负,称为数符,其余位表示数值。
把在机器内部存放的正负号数码化的数称为机器数,把机器外部由正、负号表示的数称为真值数。
例如,在机器中用8位二进制表示一个数+90,-90,其格式为:
字长是寄存器的位数,也是CPU一次可以处理的二进制位数。
字长一定,计算机所能表示的数的范围也就确定了。
例如,使用16位字长的计算机,它所能表示的带符号整数范围为:
-32768~32767,不带符号整数范围为:
0~65535。
运算时,若数值超出机器数所能表示的范围,就会停止运算和处理,这种现象称为溢出。
2.定点数和浮点数
计算机通常通过确定小数点位置来表示整数和小数,小数点位置有两种确定方式:
一种是规定小数点的位置固定不变,这种机器数称为定点数。
另一种是小数点的位置可以浮动,这种机器数称为浮点数。
(1)定点整数
把小数点位置固定在数据字的最后,数据字表示一个纯整数。
(2)定点小数
把小数点位置固定在符号位之后,数据字表示一个纯小数。
(3)浮点实数
浮点数与科学计数法相对应,可以表示包括整数和小数部分的实数,因此与定点表示法相比表示的数的范围扩大了。
一个浮点数由两部分构成,即阶码和尾数。
其存储格式为:
阶符
阶码
数符
尾数
阶符和数符各占一位,阶码给出的总是整数,尾数总是小于1的数字。
阶符的正负决定小数点的位置,若阶符为正,则向右移动;若阶符为负,则向左移动。
数符的正负决定浮点数的正负。
阶码的位数随数值表示的范围而定,尾数的位数则依数的精度要求而定。
例如,
0
1
通常规定,当浮点数的尾数为零或者阶码为最小值时把该数看作零,称为“机器零”。
在浮点数表示中,当一个数的阶码大于机器所能表示的最大阶码时,产生“上溢”。
上溢时机器一般不再继续运算而转入“溢出”处理。
当一个数的阶码小于机器所能表示的最小阶码时,产生“下溢”,下溢时一般当作机器零来处理。
3.带符号数
机器数用符号位0和1表示正负。
为了在计算中将数值和符号位同时进行运算,常对机器数采用原码、补码和反码表示法。
(1)原码
原码表示法是机器数的一种简单表示法。
用0表示正号,用1表示负号,数值一般用二进制形式表示。
数X的原码可记作[X]原。
例如,
[+0.99]原=0.[+127]原=
[-0.99]原=1.[-127]原=
在原码表示法中,对0有两种表示形式:
[+0]原=[-0]原=
(2)反码
机器数X的反码表示规则为:
①若X是正数,则反码与原码一样。
②若X是负数,则反码由其原码(符号位除外)各位取反得到。
例如,
[+0.99]反=0.[+127]反=
[-0.99]反=1.[-127]反=
在反码表示法中,对0也有两种表示形式:
[+0]反=[-0]反=
(3)补码
机器数X的补码表示规则为:
①机器数是正数,则补码与原码一样。
②机器数是负数,则补码为其原码(除符号外)各位取反,并在末位加1。
例如,
[+0.99]补=0.[+127]补=
[-0.99]补=1.[-127]补=
在补码表示法中,对0有惟一的表示形式:
[+0]补=[-0]补=
使用补码的优点是:
首先,使符号位能与有效值部分一起参加运算,从而简化运算规则;其次,使减法运算转换为加法运算,进一步简化计算机中运算器的线路设计,因此使用非常广泛。
但是所有这些转换都是在计算机的最底层进行的,而在汇编、C等其他高级语言中使用的都是原码。
1.2.3字符的表示
由于计算机是以二进制的形式存储、运算、识别和处理数据的,因此,字母和各种字符也必须按特定的规则变为二进制编码才能输入计算机。
字符编码实际上就是为每一个字符确定一个对应的整数值,以及相对应的二进制编码。
但是,由于字符(包括拉丁字母)与整数值之间没有什么必然的联系,某一个字符究竟对应哪个整数完全可以任意规定。
为了信息交换中的统一性,人们已经建立了一些字符编码标准,常用的有ASCII(AmericanStandardCodeforInformationInterchange,美国标准信息交换代码)字符编码标准以及IBM公司提出的EBCDIC代码等。
其中以ASCII码使用的范围最广泛。
国际标准化组织(ISO)和我国都颁发了与ASCII一致的编码标准(ISO-646和GB-1988-80)。
ASCII编码标准用7位二进制数编码,用来表示128种不同的字符,如表1-4所示。
其中的95个编码对应键盘上能敲入,并且可以显示和打印的95个字符。
这95个字符可分为几大类:
大写、小写各26个英文字母;0~9共10个数字;通用的运算符和标点符号:
+、-、×、/、>、=、!
等。
另外的33个字符,其编码值为0~31和127,即0000000~0000001和1111111,不对应任何一个可显示或打印的实际字符,它们被用作控制码,控制计算机某些外围设备的工作特性和某些计算机软件的运行情况。
例如,编码(码值为10)表示“换行”。
由7位编码构成的ASCⅡ码基本字符集能表示的字符只有128个,不能满足信息处理的需要,所以又对ASCⅡ码字符集进行扩充,采用一个字节(8位二进制位数)表示一个字符,编码范围:
~,一共可表示256种字符和图形符号,成为扩充的ASCⅡ码字符集。
对计算机字符的处理实际上是对字符编码进行处理。
例如:
比较字符A和E的大小,实际上是对A和E的ASCII码65和69进行比较。
字符输入时,按一下键,该键所对应的ASCII码即存入计算机。
把一篇文章中的所有字符录入到计算机,计算机里存放的实际上是一大串ASCII码。
表1-4ASCII字符集
二进制
000
001
010
011
100
101
110
111
0
0000
NUL
DEL
SP
0
@
P
`
p
1
0001
SOH
DC1
!
1
A
Q
a
q
2
0010
STX
DC2
"
2
B
R
b
r
3
0011
ETX
DC3
#
3
C
S
c
s
4
0100
EOT
DC4
$
4
D
T
d
t
5
0101
ENQ
NAK
%
5
E
U
e
u
6
0110
ACK
SYN
&
6
F
V
f
v
7
0111
BEL
ETB
'
7
G
W
g
w
8
1000
BS
CAN
(
8
H
X
h
x
9
1001
HT
EM
)
9
I
Y
i
y
10
1010
LF
SUB
*
:
J
Z
j
z
11
1011
VT
ESC
+
;
K
[
k
{
12
1100
FF
FS
<
L
\
l
|
13
1101
CR
GS
-
=
M
]
m
}
14
1110
SO
RS
.
>
N
^
n
~
15
1111
SF
US
/
?
O
_
o
DEL
1.2.4汉字表示法
英文是拼音文字,一个不超过128种字符的字符集,就可满足英文处理的需要。
汉字是象形结构,字数多,字形复杂,计算机存储和处理都比较复杂。
用计算机处理汉字,首先要解决汉字编码问题。
根据统计,在人们日常生活交往中经常使用的汉字约有四五千个。
原则上,两个字节可以表示256×256=65536种不同的符号,作为汉字编码表示的基础是可行的。
我国国家标准局采用了加以修正的两字节汉字编码方案,只用了两个字节的低7位。
这个方案可以容纳128×128=16384种不同的汉字,但为了与标准ASCII码兼容,每个字节只能用94个编码。
国家标准汉字字符集GB2312-80共收集了7445个汉字和图形符号,其中汉字6763个,分为二级,一级汉字3755个,二级汉字3008个,另外还包括:
❑一般符号202个:
包括间隔符、标点、运算符和制表符号;
❑序号60个:
它们是1~20(20个)、
(1)~(20)、①~⑩和
(一)~(+);
❑数字22个:
0~9、Ⅰ~Ⅻ;
❑英文字母52个;日文假名169个(83,86);希腊字母48个;俄文字母66个;
❑汉语拼音符号26个;汉语注音字母37个。
每个汉字符号都对应一个国标码和一个区位码,国标码是一个四位十六进制数,区位码是一个四位十进制数。
因为十六进制数很少用到,所以常用的是区位码,它的前两位叫做区码,后两位叫做位码,区的序号和位的序号都是从1~94。
相应地,国标码的第一字节可视为存放位置的行号,从21H~7EH,第二字节可视为存放位置的列号,也从21H~7EH,如表1-5所示。
表1-5GB2312-80字符集结构
00~20
212223