从上图中我们可以看到计算机的硬件构成,它是由主机、显示器、键盘、鼠标、音响以及光驱等构成的,但是,这只是从电脑的外部来看的。计算机的构成并不是单单指外部构成,而是包括硬件构成和软件构成。那么,什么是计算机的硬件和软件呢?
第一节运控存输——计算机的硬件
计算机的硬件通常是指一切能够看得见、摸得着的设备实体,它位于计算机系统的最底层,是计算机系统的物质基础。那么,计算机的硬件部分都包含哪些装置呢?从整体上来分,计算机的硬件主要有两大部分,分别为主机和外部设备等。主机主要包括中央处理器与内存储器,外部设备包括外存储器、输入设备、输出设备以及其他部分。其中输入输出设备(显示器、键盘、打印机)是直接与用户打交道的硬件,而CPU(中央处理器)等设备是不与用户直接接触的。
1.计算机的大脑——主机
计算机的主机是计算机硬件中主要的部分,它主要包括中央处理器、内存储器以及外部设备,外部设备包括输入与输出设备,例如键盘、鼠标、硬盘、显示器、打印机等。
(1)中央处理器
中央处理器的英文缩写CPU,是由英文“Central ProcessingUnit”而来的,也称中央处理单元,主要由控制器和运算器组成。微型计算机的中央处理器在一个芯片上,称为微处理器。它是计算机的核心部分。
通常它的型号决定了整个计算机的型号和基本性能。例如CPU是80386的计算机,就被称为386微机,如果CPU是80486的计算机,称为486微机,还有我们以前常说的奔腾等,也是根据CPU来命名的。
中央处理器对于计算机的作用就像大脑对于人的作用一样重要,因为它要负责处理、运算计算机内部所有的数据。另外,它上面的主板芯片组就好比是人的心脏一样,控制着计算机内部数据的交换。再者,CPU的种类决定了所使用的操作系统和相应的软件。
那么,你知道什么是CPU的性能指标吗?它的性能指标主要有主频、外频、前端总线(FSB)频率、CPU的位和字长、倍频系数、缓存以及CPU扩展指令集,等等。为了能使大家对它有更进一步的了解,我们将选取其中的几项比较重要的性能指标来进行讲解。
①主频
主频也叫时钟频率,单位是“兆赫兹”,用MHz来表示,或者“吉赫兹”用GHz表示。主频是用来表示CPU的运算、处理数据的速度。
一般来说,CPU的主频=外频×倍频系数。那么,这是不是代表主频就是衡量CPU运行速度的主要因素之一呢?
其实,这样理解是片面的。如果这样来理解的话,对于计算机的服务器来讲,也出现了偏差,因为到目前为止,还没有一条确定的公式能够实现主频和实际的运算速度两者之间的数值关系,在这一点上还存在着很大的争议。
其实,CPU的主频与CPU实际的运算能力之间是没有直接关系的。虽然主频是表示CPU的运算与处理数据的速度,但是它一般表示CPU内数字脉冲信号震荡的速度。
例如在Intel的处理器产品中,1吉赫兹“奔腾”芯片所表现出来的运行速度与2.66吉赫兹“至强/皓龙”(专为服务器、工作站而设计的处理器)一样快,或是1.5吉赫兹奔腾2(专为要求苛刻的企业和技术应用而设计,是瞄准高端企业市场的)大约与4G赫兹“至强/皓龙”一样快。
由此可以得出,CPU的运算速度并不是只靠主频来决定的,它仅仅是CPU性能表现的一个方面,而不代表CPU的整体性能,要看CPU的速度还要结合CPU的流水线、总线等各方面的性能指标。
②外频
我们知道主频是衡量CPU运算速度的一个方面,那么,你知道外频和CPU是什么关系吗?它是CPU的基准频率,用“兆赫兹”(MHz)来表示,它决定着整块主板的运行速度。一般来说,台式机中的超频,都是指超CPU的外频,因为对于服务器CPU来说,超频是绝对不允许的。CPU是主板上的主要元器件,所以它决定着主板的运行速度,并且两者的运行是同步的,如果服务器CPU超频,就会改变外频,从而会产生与主板运行不同步的现象产生。这样就会造成整个服务器系统的不稳定,造成计算机不能正常运行。
由此我们了解到,外频是内存与主板之间同步运行的速度标志,并且目前绝大部分电脑系统都是用外频来做CPU的基准频率的。另外,在这种方式下,CPU的外频可以直接与内存相连通,实现两者间的同步运行状态。不过,有时候外频与前端总线(FSB)频率很容易被人们认为是同一频率,其实不是这样的。那么,什么是前端总线频率呢?下面就让我们来了解一下前端总线。
③前端总线(FSB)频率
前端总线(FSB)频率也被称为总线频率,是能够直接影响CPU与内存交换数据速度的主要因素。关于前端总线频率可以用公式来进行计算:前端总线频率=数据带宽×8数据位宽。其中,数据传输最大带宽取决于所有同时传输的数据的宽度与传输频率。
上面我们提到,外频和前端总线频率很容易被人混淆,那么,它们之间有什么区别呢?首先,前端总线的速度指的是数据传输的速度,外频是CPU与主板之间同步运行的速度。也就是说,100兆赫兹外频特指数字脉冲信号在每秒钟震荡1亿次,而100兆赫兹前端总线指的是每秒钟CPU可接受的数据传输量是100兆赫兹×64字节÷8字节=800兆字节/秒。
④CPU的位和字长
计算机采用的是二进制编码,因此,在表示二进制数据的时候就要用到单位,那么这些单位是什么呢?它们就是位和字长。
“位”一般用在数字电路和电脑技术中的二进制数系统中,是数据存储的最小单位。二进制数的代码只有“0”和“1”,因此,无论“0”还是“1”在CPU中都表示是一“位”。除了能用位(bit)来表示二进制数外,还可以用字节(Byte)来表示,它们之间的换算是8位等于一个字节(8bit=1Byte)。另外,计算机中的CPU位是指CPU一次能处理的最大位数,例如32位计算机的CPU一次最多能处理32位数据。
“字长”指在计算机技术中,CPU在单位时间内或者同一时间内,一次能处理的二进制数的位数。
例如,能一次性处理字长为8位数的CPU通常就叫8位的CPU。在单位时间内处理字长为32位的二进制数据就被称为32位的CPU。
我们知道,字节是能够和位进行换算的单位,那么,字节和字长之间有没有关系呢?一般我们常用的英文字符用8位二进制数就能表示,因此,通常我们把8位二进制数称为一个字节。但是,字长的长度是不固定的,对于不同的CPU来说,它的字长长度也不一样。8位的CPU一次只能处理一个字节,而32位的CPU一次就能处理4个字节,同理,字长为64位的CPU一次可以处理8个字节。
⑤倍频系数
CPU主频与外频之间的比例关系被称为倍频系数。因此,在外频相同的情况下,CPU的频率越高倍频也越高,它们之间成正比例关系。
不过,如果外频相同,高倍频的CPU本身变化就没有多大的意义了。
这是因为CPU与系统之间数据传输速度是有限的,一味追求高倍频而得到高主频的CPU就会出现明显的“瓶颈”效应,也就是说CPU从系统中得到数据的极限速度不能够满足CPU运算的速度。一般除了工程样版的Intel的CPU都是锁了倍频的,而AMD之前都没有锁,现在AMD推出了黑盒版CPU,也就是不锁倍频版本,用户可以自由调节倍频,调节倍频的超频方式比调节外频稳定得多。
⑥缓存
计算机的存储是我们都比较熟悉的,那么,缓存是怎么回事呢?
其实,缓存也是CPU的重要指标之一,并且缓存的结构和大小对CPU速度的影响也非常大,因为CPU内缓存的运行频率极高,一般是和处理器同频运作的,工作效率远远大于系统内存和硬盘。在CPU实际工作时,常常需要重复读取同样的数据块,但是,如果没有一定的容量是不能够做到这样一步的。而缓存能够使容量增大,这样就可以大幅度提升CPU内部读取数据的精确率,并且不用再到内存或者硬盘上寻找,从而提高系统性能。
从CPU芯片面积和成本的因素来考虑,缓存都比较小。一般缓存可以分为3个级别,分别是一级缓存、二级缓存、三级缓存。
一级缓存是指CPU第一层高速缓存,它又包括数据缓存和指令缓存,内部所具有的高速缓存容量和结构,对CPU的性能有很大的影响。不过高速缓冲存储器都是由静态随机存取内存所组成的,结构比较复杂。
如果CPU管芯的面积不够大,一级高速缓存的容量也不会太大。它的缓存容量一般在32KB~256KB(千字节,1KB等于1024B)。
二级缓存指的是CPU的第二层高速缓存,包括内部和外部两种芯片。内部的芯片所具有的二级缓存运行速度与主频是相同的,而外部的芯片所具有的二级缓存只有主频的一半。二级高速缓存容量与CPU性能之间的关系成正比,也就是说越大越好。回想一下过去的家用电脑的CPU容量,最大的也只是512KB,而目前的笔记本电脑就能达到2M,更何况是服务器和工作站上所使用的CPU所具有的二级高速缓存呢?它的容量将会更大,有的甚至能够达到8M以上。
三级缓存一般分为两种,最早期的是外置,而目前的是内置。
应用三级缓存不仅能够进一步降低内存延迟,而且还能在进行大量数据计算时提升处理器的性能。这一特点对计算机中所涉及的游戏部分很有帮助。另外,在服务器领域运用三级缓存,能够很好地提升服务器的性能。例如,具有较大三级缓存的处理器,能够提供更有效的文件系统缓存行为,并且对于比较短的消息和处理器队列的长度也有一定的帮助。
⑦CPU扩展指令集
计算机的工作原理就是靠指令来工作的,就像我们的身体一样,肢体的运动也是靠大脑来发号施令的。我们知道,CPU是电脑的核心,那么,它靠什么工作呢?
CPU是依靠指令来计算和控制系统的,不同的CPU在设计的时候就规定了一系列与硬件电路相配合的指令系统。因此,指令的强弱是CPU的重要指标,并且还是提高微处理器效率的最有效工具之一。
CPU的指令集可以分为复杂指令集和精简指令集两个部分,在实际的运用中,这些CPU的扩展指令集能够增强CPU的多媒体、图形图像和Internet等的处理能力。另外,通常会把CPU的扩展指令集称为“CPU的指令集”。SSE3指令集(多数据扩展指令集3)是目前规模最小的指令集,此前MMX(多媒体扩展的缩写)包含有57条命令,SSE(多数据扩展)包含有50条命令,SSE2(多数据扩展指令集2)包含有144条命令,SSE3(多数据扩展指令集3)包含有13条命令。不过,SSE3却是目前最先进的指令集。
关于中央处理器还有一些其他的性能指标,比如CPU内核和I/O工作电压、制造工艺等,不过与以上的性能指标相比没有那么重要罢了。
计算机的发展是一个“体积由大变小,功能由小变大”的过程。其实,在计算机的转变过程中,最重要的变化就是它的心脏——CPU的变化。那么,CPU是怎么一路发展到现在的水平呢?
首先是X86时代的CPU。
1978年,Intel(英特尔)公司首次生产出i8086的微处理器,它是一种16位的微处理器,并且,与它一起诞生的还有和它相配套的数学协处理器,命名为i8087。虽然这两种芯片使用的指令集是能够相互兼容的,但在i8087指令集中增加了一些专门用于对数、指数和三角函数等数学计算的指令。也正因为如此,人们又称这些指令集为X86指令集,但是,这种指令集不是最好的,以后Intel公司又陆续生产出第二代、第三代等更为先进和更快捷的新型CPU,并且还都能兼容第一代的X86指令。因此,Intel在后来研制出的CPU的命名上仍然沿用了原先的X86序列,例如后来出现的286、386、486、586等。
到1979年的时候,Intel公司又推出了8088芯片,不过它仍然是16位微处理器。在它的内部含有2.9万个晶体管,时钟频率为4.77兆赫兹,地址总线为20位,并且有1兆内存可使用。1981年8088芯片首次被用于IBM公司的PC机中,由此开创了全新的微机时代。
也正是从8088开始,PC机也就是个人计算机的概念才开始在全世界范围内发展起来。
1982年,Intel公司推出一款具有划时代意义的最新产品——80286芯片,该芯片与8006和8088相比,是一次飞跃。虽然它也是16位结构的,但是CPU内部的晶体管已经达到13.4万个了,并且时钟频率由最初的6兆赫兹逐步提高到20兆赫兹。另外内外部的数据总线也都是16位,地址总线是24位,内存增大到16兆。从80286开始,CPU的工作方式也发生了改变,由原来的一种演变成两种,也就是实模式和保护模式。