这一章,主要是讲的冯诺依曼体系结构和简单介绍计算机的发展史。
一、从逻辑元件的发展,看计算机硬件的发展
电子管时代。
晶体管时代。
中小规模集成电路时代。
超大规模集成电路。
在计算机元件的更新换代中有一个著名的 摩尔定律 ——当价格不变时,集成电路上可容纳的晶体管数目,约每隔18个月便会增加一倍,性能也将提升一倍。
二、 冯·诺依曼体系结构
前面我们了解了计算机的硬件发展,计算机的种类是多种多样的。笔记本电脑、台式电脑、手机、IPad、服务器,这些都属于计算机,因为它们都遵循着,计算机祖师爷冯·诺依曼老爷子(对,是男的,男的)提出的,冯·诺依曼体系结构,也叫存储程序计算机。
简单的概括一下冯老爷提出的这套理论的三个基本原则:
- 采用二进制运算
- 程序存储执行
- 有五部分组成(运算器、控制器、存储器、输入设备、输出设备)
二进制作为主要涉及思想之一,主要是因为电子元件的双稳定工作的特点,二进制的采用可以简化机器的逻辑线路。
程序的存储执行。就意味这个这个计算机是可编程的和可存储的。就是说程序的本身是存在内存中的,根据不同的需要去加载不同的程序,来解决不同的问题。而像老式的计算器就属于不可编程的。而第一台计算机ENIAC,通过在板子上不同的插头或者接口的位置插入线路,来实现不同的功能。ENIAC属于可编程,但它不可存储。因为每次要执行与当前程序不同的程序时,需要重新插板子,所以老式的计算器和ENIAC都不属于冯·诺依曼机。
冯·诺依曼机特点如下:
- 计算机硬件系统由运算器、存储器、控制器、输入设备和输出设备5大部件组成。
- 指令和数据以同等地位存储在存储器中,并可按地址寻访。
- 指令和数据均用二进制代码表示。
- 指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。
- 指令在存储器内按顺序。通常,指令是顺序执行的,在特定条件下可根据运算结果或根据设定的条件改变执行顺序。
- 早期的冯·诺依曼机以运算器为中心,输入/输出设备通过运算器与存储器传输数据。
典型冯诺依曼计算机结构
由于大量I/O设备的速度和CPU的速度差距悬殊,现代计算机已经发展为以存储器为核心。
三、详细介绍功能部件
在介绍每个功能部件之前,先通俗了解一下寄存器,内存和辅存,在知乎上有一个回答我觉得很好。
寄存器就是你的口袋。身上只有那么几个,只装最常用或者马上要用的东西。
内存就是你的背包。有时候拿点什么放到口袋里,有时候从口袋里拿出点东西放在背包里。
辅存就是你家里的抽屉。可以放很多东西,但存取不方便。
输入输出设备(I/O设备)
输入输出设备是计算机与外界沟通的桥梁。这个很好理解。输入设备的主要功能是将程序和数据以机器所能识别和接受的信息形式输入计算机。而输出设备就是讲计算机处理的结果以人们所能接受的形式返回。比如鼠标、键盘就是我们常见的输入设备,而显示器就是输出设备。
I/O设备,都是通过主板上面的南桥芯片组,来和CPU进行通讯的。
存储器
存储器是计算机的存储部件,用来存放程序和数据。
存储器分为主存储器和外部存储器。主存储器就是我们常说的内存,CPU可以直接访问,而外部存储器中的信息必须调入主存储器后,才能被CPU所访问。
主存储器的工作方式
按存储单元的地址进行存取,这种存取方式称为按地址存取方式(相连存储器是按内容访问的)
主存储器的基本组成
- 地址寄存器(MAR-Memory Address Register)
用于寻址,其位数对应着存储单元个数,MAR为N为,则有2^N个存储单元。 - 数据寄存器(MDR-Memory Data Register)
MDR的位数与存储字长相等。一般为字节的二次幂的整数倍。 - 存储体
存储体是由一个一个的存储单元构成的。一般以8位二进制(8bit)也就是一字节(1Byte)作为一个存储单元。一个存储单元所存储的二进制代码的组合叫做存储字。存储字的位数就称为存储字长。存储字长可以是1B(8bit)或是字节的偶数倍。 - 译码器
- 驱动器
现代计算机。 地址寄存器和数据寄存器是放在CPU里的。分别通过地址总线和数据总线与内存通讯。
运算器
计算机的执行部件,用于算术运算和逻辑运算。核心为ALU(Arithmetic and Logical Unit,算数逻辑单元)。
包含若干个通用寄存器,用于暂存操作数和中间结果,如累加器(ACC),乘商寄存器(MQ)、操作数寄存器(X)等。
还有程序状态寄存器(PSW),也称标志寄存器,用于存放ALU运算得到的一些标志信息或者处理机的状态。如是否溢出,有无进位、结果是否为负数。
控制器
计算机的指挥中心。
CU 控制单元(Control Unit)
IR 指令寄存器,存放当前指令(InstructionRegister)。
PC (Program Counter,程序计数器) 存放指令的地址,并且可以自动加一
一般运算器和控制器集成到一个芯片上,称为中央处理器(CPU)。
指令是由操作码和地址码构成
CPU区分指令和数据的依据:指令周期的不同阶段。
四、计算机的性能指标
机器字长
指计算机一次可以处理的二进制数,字数越长则计算机的处理速度越快,处理精度越高。(一般等于内部寄存器大小)。
运算速度
每秒所能执行的指令数。单位为MIPS(Million Instructions Per Second,即百万条指令每秒)
FLOPS:每秒执行多少次浮点运算。
时钟频率
说到时钟频率,我们先来说一下频率这个概念。频率是单位时间内完成周期性变化的次数,是描述周期运动频繁程度的量。为了纪念物理学家赫兹,将频率单位定义为Hz。时钟周期时间为频率的倒数。
CPU的执行时间 = CPU时钟周期数 CPU时钟周期时间。
CPU时钟周期数 = 指令数 每条指令的平均时钟周期数(CPI)。
主存容量
内存储器容量的大小反映了计算机即时存储信息的能力。
下面还有几个重要的性能指标:
数据通路带宽:数据总线一次能够并行传递信息的位数。
吞吐量:系统在单位时间内处理请求的数量。(评价计算机系统性能的综合参数)