2.1 计算机硬件基础知识
硬件是计算机物理设备的总称,也称为硬设备,是计算机进行工作的物质基础。
2.1.1 指令和程序
1.指令
计算机完成一项工作,是按照人们编制好的程序进行的。如两个数相加的计算机解题过程,可分解为下面的步骤(假定要运算的数据已存在存储器中)。
第1步:把第1个数从它的存储单元中取出来,送到运算器中。
第2步:把第2个数从它的存储单元中取出来,送到运算器中。
第3步:两数相加。
第4步:将计算结果送到存储器指定的单元中。
第5步:停机。
上面的取数、相加、存数等操作都是计算机中的基本操作,将这些基本操作用命令的形式写下来就是计算机的指令(Instruction)。也就是说,指令是人们对计算机发出的工作命令,告诉计算机要进行的操作。通常一条指令对应一种基本操作。
指令通常由一串二进制数组成,也称为机器指令。一条指令通常包括操作码和地址码两部分。
操作码:指出机器要执行的操作。
地址码:指出要操作的数据(操作对象)在存储器中的存放地址以及操作结果要存放的地址。
一台计算机可以有许多指令,所有指令的集合称为它的指令集(Instruction Set),又称为指令系统。各种类型的计算机的指令系统都不尽相同,不同的指令系统中的指令数目和功能存在着很大的差异。指令系统的内核是硬件,随着硬件成本的下降,人们为提高计算机的适用范围,不断地增加指令系统中的指令,以求尽可能缩小指令系统与高级语言的语义差异,而在增加新的指令系统时仍然保留了老机器指令系统中的所有指令,使用这些指令的计算机称为“复杂指令计算机”(CISC)。测试结果表明,计算机常用的是仅占20%的一些简单指令。因此,1975年IBM公司提出精简指令系统的设想,选择使用频率较高、长度固定、格式种类和指令寻址方式少的指令构造了“精简指令计算机”(RISC)。
2.程序
程序(Program)是一系列指令组成的,为解决某一具体问题而设计的一系列排列有序的指令的集合。设计及书写程序的过程称为程序设计。
程序存入计算机,计算机就能按照程序进行工作。
2.1.2 存储程序原理
计算机要执行程序中每一条指令才能完成任务。计算机要完成自动连续运算,必须在开始工作后自动地按程序中规定的顺序取出要执行的指令,然后执行其操作。
计算机可以自动完成运算或处理过程的基础是存储程序原理,它是由冯·诺依曼于1946年提出来的,因此称为冯·诺依曼原理,现在的计算机仍然遵循着这个原理。
存储程序原理的要点有:为解决某个问题,要事先编制程序(可以用高级语言或机器语言编写);程序输入到计算机中,存储在内存储器中(存储原理);运行时,控制器按地址顺序取出存放在内存储器中的指令,然后分析指令、执行指令,若遇到转移指令,则转移到指定的地址,再按地址顺序访问指令(程序控制)。
计算机的工作都是在控制器的控制下进行的。计算机的工作过程由以下几步组成。
第1步:控制器控制输入设备将数据和程序输入到内存中。
第2步:在控制器的指挥下,从存储器中取出指令到控制器。
第3步:控制器分析指令,指挥运算器、存储器执行规定的操作。
第4步:运算结果由控制器控制送到存储器保存或送到输出设备输出。
第5步:返回第2步,继续取下一条指令,然后执行,直到程序结束。
2.1.3 计算机系统的硬件组成
到目前为止的4代计算机都基于同样的基本原理:以二进制数和程序存储控制为基础。这种结构的计算机主要由运算器、控制器、存储器、输入及输出设备5部分组成,如图2-2所示。
图2-2 计算机系统的硬件组成
1.运算器
运算器(Arithmetic Unit,AU)是执行算术运算和逻辑运算的部件,其任务是对信息进行加工处理。运算器由算术逻辑单元(Arithmetic Logical Unit,ALU)、累加器、状态寄存器和通用寄存器等组成。
ALU 是对数据进行加、减、乘、除算术运算,与、或、非逻辑运算及移位、求补等操作的部件。累加器用来暂存操作数和运算结果。状态寄存器(或称标志寄存器)用来存放算术逻辑单元在工作中产生的状态信息。通用寄存器用来暂存操作数或数据地址。运算器的性能主要由 MIPS(Million Instructions Per Second,每秒执行百万指令)来衡量。
ALU、累加器和通用寄存器的位数决定了CPU的字长。例如在64位字长的CPU中,ALU、累加器和通用寄存器都是32位的。
运算器的性能指标是衡量整个计算机性能的重要指标之一,与运算器相关的性能指标包括计算机的字长和运算速度。
字长是指计算机的运算器能同时处理的二进制数据的位数,它确定了计算机的运算精度,字长越长,计算机的运算精度就越高,其运算速度也越快。另外,字长也决定了计算机指令的直接寻址能力,字长越长,计算机的处理能力就越强。目前普遍使用的Intel和AMD微处理器大多是32位,也有64位的。
运算速度是一项综合的性能指标,用MIPS表示,计算机的主频和存取周期对运算速度的影响最大。
2.控制器
根据程序的指令,控制器(Control Unit,CU)向各个部件发出控制信息,以达到控制整个计算机运行的目的,因此,控制器是计算机的心脏。
控制器在主频时钟的协调下,使计算机各部件按照指令的要求有条不紊地工作。它不断地从存储器中取出指令,分析指令的含义,根据指令的要求发出控制信号,进而使计算机各部件协调地工作。
运算器与控制器组成中央处理器,中央处理器简称为CPU(Central Processing Unit)。CPU负责解释计算机指令,执行各种控制操作与运算,是计算机的核心部件。从某种意义上说,CPU的性能决定了计算机的性能。目前市场上计算机的CPU芯片主要由Intel、AMD及CYRIX公司提供。Intel公司的系列芯片有8086、80286、80386、80486、Pentium(也叫“奔腾”)、PentiumⅡ、PentiumⅢ、PentiumⅣ、Celeron、Core 2、i3、i5、i7等。
衡量CPU性能的主要指标是主频,即由时钟发生与控制器产生的时钟脉冲的频率,其单位为GHz。计算机的运算速度主要是由主频确定的,主频越高,其运算速度也就越快。
3.存储器
存储器是用来存储程序和数据的记忆部件,是计算机中各种信息的存储和交流中心。Memory 是指内存储器。通常把控制器、运算器和内存储器称作主机。
存储器的主要功能是保存信息。它的功能与录音机类似,使用时可以取出原记录的内容而不破坏其信息(存储器的“读”操作);也可以将原来保存的内容抹去,重新记录新的内容(存储器的“写”操作)。
存储器分为内部存储器和外部存储器。
(1)内部存储器
内部存储器也称内存(Memory),由大规模集成电路存储器芯片组成,用来存储计算机运行中的各种数据,包括数据、程序、指令等。内存分为RAM、ROM及Cache。
RAM为Random Access Memory的缩写,中文名为“随机读写存储器”。通常说的计算机内存容量就是指的RAM的大小,即计算机的内存。RAM既可从其中读取信息,也可向其中写入信息。在开机之前RAM中没有信息,开机后操作系统对其使用进行管理,关机后其中存储的信息都会消失。RAM中的信息可随时改变。
ROM为Read Only Memory的缩写,中文名为“只读存储器”,即只能从其中读取信息,不可向其中写入信息。在开机之前ROM中已经存有信息,关机后其中的信息不会消失,ROM中的信息一成不变。因此ROM中一般存放计算机系统管理程序,如监控程序、基本输入/输出系统BIOS等。
Cache 中文名叫作“高速缓冲存储器”,它在不同速度的设备之间交换信息时起缓冲作用。相比 RAM和ROM,其读取速度最快。
内存中可存储信息的多少称为存储器的容量,其基本单位为字节(Byte,记作B)。一个字节由8个二进制位组成,“位”是计算机中最小的信息单位,是存放一个英文字符的空间。
存储器的容量单位还有KB、MB、GB、TB等。
1 B = 8 bit
1 KB = 1024 B
1 MB = 1024 KB
1 GB = 1024 MB
1 TB = 1024 GB
① 计算机中的存储地址。
所有的存储单元都按顺序排列,每个单元都有一个编号,单元的编号称为“单元地址”。通过地址编号寻找在存储器中数据单元的过程称为“寻址”。显然,存储器地址的范围多少决定了二进制数的位数。若存储器有 1 024 个(1KB)单元,那么它的地址编码为 0~1 023,对应的二进制数为 0000000000~1111111111,这表明需要用10位二进制数来表示,也就是需要10根地址线,或者说10位地址码可寻址1KB 的存储空间。存储器中的所有存储单元的总和称为这个存储器的存储容量,其单位是 KB、MB、GB或TB。图2-3所示为存储单元的地址和存储内容的示意图。
② 地址和容量的计算。
● 根据地址总线的数量,计算寻址空间
若地址总线有n根,则其寻址空间为2n。
如n = 32,则其寻址空间为232= 4GB
图2-3 存储单元的地址和存储内容的示意图
● 根据起始地址和末地址计算存储空间
计算方法为末地址−起始地址+1
若地址范围为4000H~4FFFH,则存储空间为
4FFFH − 4000H + 1 = 1000H = 212B = 4KB
根据存储器的容量和起始地址,计算末地址
计算方法为起始地址+存储容量−1
若存储器的容量为32KB,用十六进制对它的地址进行编码,起始编号为0000H,则末地址为
0000H + 32KB − 1 = 32KB − 1 = 32×210− 1 = 25×210− 1 = 215− 1
= 1000 0000 0000 0000B − 1 = 8000H − 1 = 7FFFH
内存储器的性能指标有两个:内存容量和存取周期。
内存储器中可以存储的信息总数称为内存容量。内存容量越大,处理数据的范围就越广,运算速度一般也越快。目前计算机的内存容量一般为2GB或4GB。
把信息存入存储器的过程称为“写”,把信息从存储器取出的过程称为“读”。存储器的访问时间(读写时间)是指存储器进行一次读或写操作所需的时间;存取周期是指连续启动两次独立的读或写操作所需的最短时间。目前,计算机的存取周期为几十纳秒(ns)到一百纳秒。
(2)外部存储器
外部存储器也叫辅助存储器或外存,用于内存的后备与补充。其特点是容量大、价格低、可长期保存信息。常用的外存有硬盘、U盘及光盘等。
外部存储器是计算机中的外部设备,用来存放大量的暂时不参加运算或处理的数据和程序,计算机若要运行存储在外存中的某个程序,须将它从外存读到内存中才能执行。
外存按存储介质分为磁存储器、光存储器和半导体集成电路存储器。
① 硬盘。
硬盘不能像U盘、光盘那样能从主机中方便地取出来,而是一直在主机中。所以,硬盘也叫“不可移动的磁盘”。硬盘具有容量大、存取速度快等优点,操作系统、常用的应用程序、用户的数据文件一般都保存在硬盘上。
硬盘买来后,人们会发现标称容量与实际容量不符,这是由于硬盘厂商对容量的计算方法与计算机上讲的不同引起的,前者以1000进位、后者以1024进位。
硬盘容量由以下几个参数决定:磁头数 H(Heads)或称盘面数、柱面数 C(Cylinders,一个柱面等于所有盘面相同编号的磁道)、扇区数S(Sector,每个磁道的扇区数)、扇区大小(每扇区字节数)。
硬盘总容量 =磁头数(H)×柱面数(C)×扇区数(S)×扇区大小(B)
硬盘接口是硬盘与主板连接的部分,常见的有ATA(Advanced Technology Attachment,高级技术附加装置)、SATA(Serial ATA,串行高级技术附加装置)和SCSI(Small Computer System Interface,小型计算机系统接口)。ATA和SATA接口主要用在个人计算机上,SCSI接口主要用在中、高档服务器和高档工作站中。
硬盘转速是指硬盘电机主轴的旋转速度,也就是硬盘盘片在 1 min 内旋转的最大转数,单位为 rpm (Revolutions Per Minute),即转/分。转速是硬盘的重要参数之一,在很大程度上直接影响硬盘的传输速度。
② 光盘(Optical Disk)。
光盘存储器简称光盘,是一种新型的信息存储设备。光盘具有存储容量大、可长期保存等优点。
光盘有只读型光盘(Compact Disk-Read Only Memory,CD-ROM),用户只能读出光盘上录制好的信息,而不能写入信息;只写一次型光盘(Write Once Only,WORM),用户只能向光盘中写入一次信息,且只能读取光盘上的内容;可重写型光盘(Rewriteable),简称 CD-RW,与 U 盘、硬盘一样可以不断地读写光盘上的内容。
新一代数字多功能光盘(Digital Versatile Disc,DVD),它的大小与CD-ROM光盘的大小相同,但这种光盘容量更大,单面单层的DVD可存储4.7GB的信息,双面双层的DVD最高可存储17.8GB的信息。DVD有3种格式,即只读数字光盘、一次写入光盘和可重复写入的光盘。
蓝光光盘(Blue-ray Disc,BD)是DVD之后的新一代光盘格式之一,它采用蓝色激光进行读写操作,蓝光光盘单面单层为25GB,双面的为50GB。
世界上第一种光驱的速度为150KB/s,后来光驱就以这个速度为基准,如倍速光驱的速度为300KB/s。现在光驱已从开始的4倍速、8倍速,发展到目前的40倍速、50倍速光驱。
③ U盘。
U盘是一种基于USB接口的无需驱动器的微型高容量活动盘,与传统的存储设备相比,U盘的主要特点有:体积小、质量轻、容量大、无外接电源、即插即用、带电插拔、存取速度快、可靠性好、使用USB接口。
USB接口的传输速率有:USB1.1为12Mbit/s,USB2.0为480Mbit/s,USB3.0为5.0Gbit/s。
4.输入/输出设备
输入/输出(Input/Output,I/O)设备用来交换计算机与其外部的信息。常见的输入/输出设备有显示器、键盘、鼠标、打印机、扫描仪和绘图机等。
输入/输出设备统称I/O设备,键盘、鼠标和显示器是每一台计算机必备的I/O设备,其他的可以根据需要有选择地配置。
输入/输出设备属于外部设备,除I/O设备外,外部设备还包括存储器设备、通信设备和外部设备处理机等。
下面简要介绍常见的I/O设备。
(1)显示器
显示器属于输出设备,用于显示主机的运行结果。它以可见光的形式传递和处理信息。
显示器按所采用的显示器件可分为阴极射线管(Cathode Ray Tube,CRT)显示器、液晶显示器(Liquid Crystal Display,LCD)和等离子显示器等。目前,微型计算机和笔记本电脑所配备的显示器大多数为LCD。
显示器按所显示的信息内容可分为字符显示器、图形显示器和图像显示器等。
显示器的分辨率表示为水平分辨率(一个扫描行中像素的数目)和垂直分辨率(扫描行的数目)的乘积,如1024×768。分辨率越高,图像就越清晰,分辨率是显示器的一项重要指标。
屏幕上的分辨率或清晰度取决于屏幕上独立显示点的数目,这种独立显示的点称为像素。点距是 CRT显示器的另一项重要的技术指标,它指的是屏幕上相邻两个颜色相同的像素之间的最小距离。点距越小,显示器的分辨率就越高。点距的单位为mm。目前显示器的点距为0.20~0.28mm。
微型计算机的显示系统由显示器和显示卡(Display Adapter,简称显卡)组成,显示器通过显卡与主机相连接。显卡的作用是在显示驱动程序的控制下,负责接收CPU输出的显示数据、按照显示格式进行变换并存储在显存中,再把显存中的数据以显示器所要求的方式输出到显示器。
显示存储器(显存)与系统内存一样,显存越大,可以存储的图像数据就越多,支持的分辨率与颜色数就越高。
根据采用的总线标准不同,显卡有ISA、VESA、PCI、VGA、SVAG、AGP等接口类型。
(2)打印机
打印机属于输出设备,用于打印主机发送的文字或图形。打印机分为两大类:击打式与非击打式。击打式的有针式打印机;非击打式的有激光打印机、喷墨打印机、热敏打印机及静电打印机。
针式打印机靠打印头上的打印针撞击色带而在纸上留下字迹。其优点是造价低,耐用,可以打蜡纸和多层压感纸等。其缺点是精度低,噪声大,体积也较大而不易携带。针式打印机有9针、24针之分,后者打印出质量较高的文字。
喷墨打印机的打印头没有打印针,而是一些打印孔,从这些孔中喷出墨水到纸上从而印上字迹。喷墨打印机的优点是可以彩色打印,安静无噪声,精度比针式打印机高,有些型号的喷墨打印机的体积很小,便于携带,价格介于针式打印机与激光打印机之间。其缺点是不能打印蜡纸和压感纸。
激光打印机把电信号转换成光信号,然后把字迹印在复印纸上。其工作原理与复印机相似。不同之处在于:复印机从原稿上用感光来获得信息,而激光打印机从计算机接收信息。激光打印机的优点是印字精度很高。现在的许多报纸、图书的出版稿都是由激光打印机打印的。另一个优点是安静,打印时只发出一点点声音。激光打印机的缺点是设备价格高、耗材贵、打印成本高。
(3)键盘
键盘属于输入设备,专门用于向主机发送信息。按其结构可分为机械式、薄膜式、电容式、无线键盘等。目前常用的键盘有3种:标准键盘(有83个按键)、增强键盘(有101个按键)和微软自然键盘(有104个按键)。
键盘按键包括数字键、字母键、符号键、功能键和控制键。
键盘上的字符分布是根据字符的使用频率决定的。人的十根手指的灵活程度是不一样的,灵活一点的手指分管使用频率较高的键位,反之分管使用频率较低的键位。将键盘一分为二,左右手分管两边,分别先按在基本键位上。
(4)鼠标
鼠标是一种光标移动及定位设备。从外形上看,鼠标是一个可以握在手掌中的小盒子,通过一条电缆线与计算机连接,就像老鼠拖着一条长尾巴。在某些软件中,使用鼠标比键盘更方便。
鼠标可以分为机械式、光电式、光学机械鼠标、无线鼠标等。
(5)扫描仪
扫描仪可以把图形图像信息输入到计算机中,形成数据文件。扫描仪通常采用USB接口,支持热插拔,使用方便。
(6)绘图机
绘图机可以绘制计算机处理好的图纸。其绘制速度快、绘制质量高,因而常使用在计算机辅助设计(CAD)等领域中。绘图机有平板和滚筒两类。
5.计算机的结构
计算机硬件系统的五大部件并不是孤立存在的,它们在处理信息的过程中需要相互连接和传输。计算机的结构反映了计算机各个组成部件之间的连接方式。
现代计算机普遍采用总线(Bus)结构。
为了节省计算机硬件连接的信号线,简化电路结构,计算机各部件之间采用公共通道进行信息传送和控制。计算机部件之间分时地占用着公共通道进行数据的控制和传送,这样的通道简称为总线。总线经常被比喻为“高速公路”,它包含了运算器、控制器、存储器和I/O设备之间进行信息交换和控制传递所需要的全部信号。按照传输信号的性质划分,总线有下面3类。
● 数据总线(DB)。
数据总线用来传输数据信息,它是双向传输的总线,CPU既可以通过数据总线从内存或输入设备读入数据,又可以通过数据总线将内部数据送至内存或输出设备。数据总线的位数是计算机的一个重要指标,它体现了传输数据的能力,通常与CPU的位数相对应。
● 地址总线(AB)。
地址总线用来传送CPU发出的地址信号,是一条单向传输线,目的是指明与CPU交换信息的内存单元或输入/输出设备的地址。由于地址总线传输地址信息,所以地址总线的位数决定了 CPU 可以直接寻址的内存范围。
● 控制总线(CB)。
控制总线用来传送控制信号、时序信号和状态信息等。其中有的是CPU向内存和外部设备发出的控制信号,有的则是内存或外部设备向CPU传送的状态信息。
总线在发展过程中已逐步标准化,常见的总线标准有ISA总线、EISA总线、PCI总线和AGP总线等。
● ISA(Industrial Standard Architecture,工业标准结构)总线是16位的总线结构,适用范围广,但对CPU资源占用太高,数据传输带宽太小。
● EISA(Extended Industry Standard Architecture,扩展工业标准结构)总线是对ISA总线的扩展。
● PCI(Peripheral Component Interconnect,外设部件互连标准)总线是32位的高性能总线,它是目前个人计算机中使用最为广泛的总线,与 ISA 总线兼容。该总线具有性能先进、成本低、可扩充性好的特点。
● AGP总线在显卡与内存之间提供了一条直接访问的途径。
● SCSI(Small Computer System Interface,小型计算机系统接口)是一种用于计算机和智能设备之间(硬盘、软驱、光驱、打印机、扫描仪等)系统级接口的独立处理器标准,具有支持多个设备、CPU占用极低、智能化等特点。
● USB(Universal Serial BUS,通用串行总线)是一个外部总线标准,它基于通用连接技术,实现外设的简单快速连接,达到方便用户、降低成本、扩展 PC 连接外设范围的目的。它可以为外设提供电源,快速是USB技术的突出特点之一。
总线结构是当今计算机普遍采用的结构,其特点是结构简单、清晰、易于扩展,尤其是在 I/O 接口的扩展能力上,由于采用了总线结构和I/O接口标准,用户几乎可以随心所欲地在计算机中加入新的I/O接口卡。
为什么外设一定要通过设备接口与 CPU 相连,而不是像内存那样直接挂在总线上?其主要原因有:CPU处理的信号只能是数字的,而外设的输入/输出信号有数字的,也有模拟的,对于模拟信号需要接口设备进行转换;CPU 只能接收/发送并行数据,而外设的数据有并行的,也有串行的,因此存在串/并信息转换的问题,这需要接口来实现;外设的工作速度远低于CPU的速度,需要接口在CPU和外设之间起到缓冲和联络的作用。
总线体现在硬件上就是计算机主板(Main Board)上配有插CPU、内存条、显卡、声卡、鼠标、键盘等的各类扩展槽或接口,而光盘驱动器和硬盘驱动器则是与主板相连。