1. 计算机的由来
在介绍计算机之前,先给大家讲一个故事:世界上第一台计算机是如何诞生的?
第一台计算机要追溯到1946年。
在二战期间,美国和敌对双方都开始使用飞机大炮等重武器
在当时,如果想要快速除掉对方的重要军事目标,就需要精准的炮口角度和弹道轨迹,才能使飞出去的炮弹击中飞行的目标
而在没有计算机出现之前,美军如果想要做到这一点,需要当时最少十几个人操作一台手摇机械式计算器,将每一个得数计算几千次的四则运算(加减乘除)才能得到一份需要的图表
所以美军决定研发一种操作方法更简单,计算速度更快,准确率更高的计算方式。
因此,在1946年的宾夕法尼亚大学里,由数学家约翰.冯.诺依曼和莫尔小组的工程师们研发的第一台计算机ENIAC诞生了,(电子数值积分和计算机”(Electronic Numerical Integrator and Calculator简称ENIAC))
而当时的摩尔小组的总工程师埃克特当时只有25岁。
这台叫做“埃尼阿克”的计算机:
1、占地面积150平方米,
2、总重量30吨,
3、使用了18000只电子管,
4、6000个开关,
5、7000只电阻,
6、10000只电容,
7、50万条线,
8、耗电量140千瓦,
9、可进行5000次加法/秒运算。(这个配置在1946年来说以已经非常厉害了)
1945年6月,冯·诺伊曼与戈德斯坦、勃克斯等人,联名发表了一篇长达101页纸的报告,即计算机史上著名的“101页报告”
是现代计算机科学发展里程碑式的文献。
明确规定用二进制替代十进制运算,并将计算机分成5大组件(计算器+控制器+存储器+输入设备+输出设备)
这一卓越的思想为电子计算机的逻辑结构设计奠定了基础,已成为计算机设计的基本原则。
而约翰.冯.诺依曼也因此被称为是现代计算机之父。
好了,故事讲完了。
接下来我们不讲『101报告』里的内容,我们主要聊一下,为什么约翰·冯·诺依曼要把计算机分成5大组件,而不是其他组合形式?
1.1 计算机的组成
首先我们把前面说的计算机5大部件拿下来:
计算机最开始的目的只有一个,那就是『运算』
但是计算机要想进行『运算』就需要有设备来输入『指令』,比如『加数/被加数』等
然后再通过另一个设备将结果『输出』出来
如果是多次计算,则需要一个设备将本次的计算过程和结果保存起来,这个设备就是『存储器』
如果需要重新使用『存储器』里的数据,则需要『控制器』来控制各个硬件之间的协调工作
这就是计算机5大部件的由来,也叫『冯·诺依曼体系』
1.2 硬件〖Hardware〗
现代计算机的常见硬件组成:
CPU (Central Processing Unit)中央处理器
作用:相当 于人体的大脑。由控制器(Control)和·运算器(Arithmetic Logic Unit)组成 。
它的主要功能是负责计算机运算和控制。
它决定计算机的工作速度和效率。
比计算机中的任何部件都能决定计算机的速度和效率。
是计算机最重的部件。
CPU风扇(Fan)
作用: 主要的作用就是为cpu降温。
若温度过高 会导致计算机死机,或者重启。
它也是计算机比软重要的部件之一。
BIOS(basic input output system)基础输入输出系统
作用:基本输入输出系统,负责主板通电后各部件自检,设置,保存。
待BIOS系统认为一切正常后才能启动系统。
内存(Memory)
作用: 内存又叫内部存储器/随机存储器(RAM)
属于电子式存储设备,它由电路板和芯片组成,特点是体积小,速度快,有电可存,无电清空,即电脑在开机状态时内存中可存储数据,关机后将自动清空其中的所有数据。
内存是临时存储器,它是CPU和磁盘之间的缓冲设备。
一般程序运行的时候会被调到内存中执行,服务关闭或程序关闭之后,数据会自动从内存中释放掉。
硬盘(HardDisk)
作用:它是永久存放数据的存储器。
磁盘上也是有缓存的 。
常用的磁盘有3.5英寸的(IDE ,SAS ,SATA,SCSI)硬盘,但他们都属于机械硬盘。
读取性能不高,比起内存要差很多。
现在最流行一种固态磁盘(SSD),它是电子,读取性能 都比较高,但价格较贵。
主板(Mainboard)
作用 :主板,又叫主机板(mainboard)、系统板(systemboard)或母板(motherboard)
它被安装在机箱内,是微机最基本的也是最重要的部件之一。
主板是电脑中各个部件工作的一个平台,它把电脑的各个部件紧密连接在一起,各个部件通过主板进行数据传输。
电脑中重要的 “交通枢纽” 都在主板上,它工作的稳定性影响着整机工作的稳定性 。
显卡(Video Card)
作用:显卡在工作时与显示器配合输出图形,文字,其作用是负责将CPU送来的数字信号转换成显示器识别的模拟信号,传送到显示器上显示出来。
一般玩游戏,做大数据处理要求显卡的性能要好一点,显卡上也有缓存。
显示器(video)
作用 : 是把电脑处理完的结果显示出来.它是一个输出设备,是电脑必不可缺少的部件之一。
网卡(Net Interface Card)
作用:充当计算机与网线之间的桥梁,是组成一个完整网络重要的部件。
电源(Power)
作用:给计算机提供能源的装置。
机箱
作用 : 用来把主板,电源,硬盘,光驱等硬件设备组装在一起的一个铁盒子。
光驱(Cdrom)
作用 :光驱是用来读取光盘中的设备,光盘为只读外部存储设备。
键盘(Keyboard)
作用: 为提供用户输入数据。
鼠标(mouse)
作用: 为用户提供操作功能。
1.3 CPU缓存(CPU Cache)
由于技术工艺原因,存储器(内存)的速度与CPU的速度差距甚远,由此CPU在与内存交互式将产生严重的性能浪费,即冯·诺伊曼瓶颈:
Surely there must be a less primitive way of making big changes in the store than by pushing vast numbers of words back and forth through the von Neumann bottleneck. Not only is this tube a literal bottleneck for the data traffic of a problem, but, more importantly, it is an intellectual bottleneck that has kept us tied to word-at-a-time thinking instead of encouraging us to think in terms of the larger conceptual units of the task at hand. Thus programming is basically planning and detailing the enormous traffic of words through the von Neumann bottleneck, and much of that traffic concerns not significant data itself, but where to find it.2
鉴于此,我们在CPU芯片内部开辟了一小部分空间,用来存储与CPU频繁通信的数据,甚至根据数据与CPU通信的频繁程度等因素的不同而存储在不同的区域,这就是CPU缓存(CPU Cache)。根据寄存器与CPU核心的“距离”将其分为一级缓存、二级缓存等。
一般而言,缓存等级越小,代表其与CPU核心越近,速度也就越快,由于其在“繁华地段”,空间也就越小,造价亦是越高。
1.4 寄存器
虽然在计算机体系结构中存在有存储器,但是运算器与控制器在运行时依然需要将数据临时存储。在CPU内部有各种用于存储数据的空间,专门用于存储数据或指令,即寄存器(Register)。
一般而言,计算机存储部件的速度为:寄存器(可以CPU同频率工作)> 一级缓存 > 二级缓存 > … > 内存
END