第 1 章 计算机系统概述
数字计算机也称为电子计算机或计算机.它无处不在.很难发现有哪个领域没有使用计算
机.在本章中.我们将介绍数字计算机、数据类型、计算机的发展和计算机分类,
1 . 1 数字计算机
数字计算机是处理各种计算任务的数字系统。“数字”的意思是计算机中的信息可由具
有部分离散值的变量来表示,这些离散值的内部处理是由具有部分离散状态的部件完成的.例如.
十进制数字 O , l , 2 ,… 9 .即提供了 10 个离散值。第一台电子数字计算机产生于 20 世纪 40 年代末,
它主要用于数值计算,那时的离散元素即为数字.为了进行数值计算而产生了数字计算机.实
际上.如果只使用两种状态.数字计算机的性能将更可靠。因为部件的物理约束和人们的逻辑处理需要.所
以数字计算机使用具有两种值的离散数据.这种数据称为二进制。
数字计算机使用只有数字 O 和 l 的二进制数据系统.一个二进制数字称作位.在
数字计算机中用一组二进制表示信息。应用各种编码技术.一组二进制数字不但可以表示
二进制数据,而且还可以表示其他离散符号.如十进制数字或字母表中的字母.例
如 ASCII 是用 7 位二进制数字表示一个字符。通过合理使用二进制组合和各种编码技术.可产生用于完成
各种类型计算的一系列指令。与基数为 10 的十进制数相比.二进制数的基数为 2 .使用了数字 O 和 1 .与
一个二进制数等值的十进制数可以扩展为包含更多位的二进制数.
计算机系统是由硬件系统和软件系统组成的,硬件系统由看得见、摸得着的物理设备构成.如磁盘
和屏幕。软件系统是管理计算机的无形“控制”,是运行在计算机中的所有程序,程序是指令的集台,它告
诉硬件应该做什么,通常将计算机硬件分为 3 个主要部分:输入和输出设备(I/O 设备)、中央处理器(CPU)
和存储器。在第 2 章中对硬件部分进行详细介绍.软件可以按其用途分类。应用软件是为诸如会计、娱乐
和工程领域之类的处理任务而设计的,如果玩过计算机游戏或用字处理软件输入入过文件内容.则用户已
经具有使用应用软件的体验。另一方面.系统软件控制计算机系统,系统软件不仅包括专业人员
用于创建应用软件的复杂程序.而且还包括用于启动计算机和提供给其他程序
使用的管理程序.这部分内容将在第 2 章和第 6 章中详细介绍,
1 . 2 数据类型
数字计算机中的二进制信息存储在存储器或处理器的寄存器中。寄存器的内容为数据或控制信息。
控制信息为一位或多位.用于表明控制信号的顺序.这些信号用于处理其他寄
存器的数据.数据是数字和其他二进制代码信息.通过处理这些数据得到所需的计算结果.下面介绍
在数字计算机最常用的数据类型和各种数据类型在计算机的寄存器中如何以二进制代码的形式表示.
数字计算机寄存器中的数据可分类如下;
.数值数据常用来表示整数.n 位无符号整数.其值的表示范围为 O ~ -l ;n 位带符号整数.其值
的表示范围为- ~ -1。这两种格式的数据可以用于算术运算。有些数值数据不能表示为整数。这些数值在
计算机中用浮点格式表示.典型的如小数部分。计算机中有专用于浮点数的寄存器和指令。
.布尔值 TRUE 和 FALSE 经常被被使用.这使它们有自己的数据类型一
一布尔型和汇编语言指令.常用 0 值表示 FALSE .用非 0 值表示 TRUE 。布尔汇编语言
指令可以对布尔数据执行逻辑操作。与逻辑指令每位都产生操作结果不同,布尔指令只产生一个结
果。下面举例来说明它们的不同,若 A=0000 0010 , B =0000 0001,则二进制数据的逻辑与运算的给果为
0000 0000;然而,如果它们是布尔值,因为它们均为非 O ,所以 A 和 B 均为 TRUE ,对它们进行布尔
与运算给果为 TRUE ,用非 O 值表示。
.计算机也可处理字符型数据。字符型数据用 ASCII、EBCDIC 、UNICODE 或其他字符编码标准
编码后的二进制数据进行存储。计算机能将若干字符连成串,用一些字符代替其他字符
或另行处理字符串,而不是用算术方法或逻辑方法处理字符。有些汇编语言指令集中
包含了直接处理字符数据的指令,而另一些汇编语言指令集中则运用其他指令构成例程来达到相同的结果。
1.3 计算机的发展
第一台大型电子计算机是电子数字模拟计算机(ENIAC),它诞生于 1946 年.从此计算机经历
了 4 个发展年代或阶段。每一年代的特点是:与上一年代相比,体积更小,费
用更低。
1 .第一代(1944-1958)
这是最早的计算机,许多抽入和输出介质采用穿孔卡和磁带,尽管一合计算机只有一个使用磁鼓的
主存,但主存几乎全部是由几百个电子管构成。因为电子管易坏,所以计算机可靠性差。与现代的微型计
算机相比,它们速度慢、会产生很高的温度,并且体积非常大,它们一次只能运行一个程序。
2 .第二代(1959-1963)
在 20 世纪 60 年代初期,多数计算机采用了晶体管和比电子管小得多的其他固态器件。磁芯看起来
像由带电的导线所串起来的非常小的金属垫圈,它最广泛地运用于主存。存储设备采用可移动磁盘组件,
它是由公共轴将多个磁盘连接在一起而形成的。第二代计算机比第一代计算机体积更小.性能更可靠,速
度更快.
3 .第三代(1964-1970 )
第三代计算机用集成电路代替了传统的晶体管电路.集成电路是一个完整的电子电路.它在一个小
硅芯片上集成了许多晶体管和其他电子元件。由于各个元件不需要在计算机系统板上用线路直接连接.所
以集成电路成本低.
用于第二代数据存储的磁盘使用得更广泛.计算机开始支持多道程序设计(同时处理多个程序)和
分时技术(多个用户同时使用相同的计算机).小型计算机在 20 世纪 70 年代初期被广泛使用.并占领
了部分大型计算机市场。以前需要由大型计算机处理的任务现在都可由小型计算机完成。
4 .第四代(1971 一至今)
大规模集成电路和超大规模集成电路得到发展.它们是成千上万个晶体管
集成在一个微小芯片上.1971 年加 Intel 公司的 Ted Hoff 发明了微处理器.它是将 CPU 的全部
组成部分,包括存储器、逻辑电路和控制电路集成到一个芯片上。微处理器和超大规模集成电路技术使计
算机在体积大小、外观、价格、可用性和性能方面得到根本改变.并且它们开创了小型化的时代——计算
机向着越来越小的方向发展.
在此期间.计算机主存的性能得到提高.而其价格不断降低.这些都直接
影响着软件的类型和可用性,
软件应用.像文字处理、电子表格、数
据库管理程序、绘图程序及桌面印刷等进入商业市场,使更多的人去使用计算
机,
1 . 4 计算机分类
计算机通常分为 4 大类:微型计算机、小型计算机、大型计算机和巨型计算机。因为计算机速度和
存储容量变化非常快.所以很难给出每类计算机的精确定义。下述定义将说明每类计算机的特点.
1 微型计算机
微型计算机也称为个人计算机.它是一种适合于在办公桌或桌面上使用的计算机并且便于携带。微
机既可用作独立计算机.又可通过连接形成网络.如局域网.局域网就是将一个办公室或一个建筑物内的
一组个人计算机和外部设备用特殊电缆连接起来.
2 .小型计算机
小型计算机设计成可同时支持多个分时终端.与微机相比.小型计算机操作速度快.并且价格高。
通常一台小型计算机能充分满足一个部门或一个小事务的日常计算需要.其他小型计算机专用于特殊应用.
例如.小型机能控制工厂中的流水线、能记录科学实验室中的数据或帮助编程人员为其他计算机开发程序。
3 .大型计算机
大型计算机比小型计算机体积更大、速度更快、价格更高.它们提供给银行、保险公司、大型团体
和政府组织使用。大型计算机可同时服务于几百个用户.它适用于解决大量数字计算问题或很多人同时共
享最大信息.
4 .巨型计算机
巨型计算机最初在 20 世纪 70 年代产生.它们是速度最快和性能最高的计算机,其价格在几十万美
元到几亿美元之间.它们要安装在具有特殊空调的房间中.这些计算机通常用于科学研究,其应用领域
包括世界范围内的天气预报技气象分析、石油勘探、航天飞机设计、核武器系
列评估和数学研究.与微型计算机一般只有一个中央处理器不同.大型计算机有几百到几千个处理
器,并且每秒能完成大最的计算.
第 2 章 计算机系统的组成原理
本章主要介绍基本计算机系统的组成,包括计算机组成简介、系统总线、CPU 组成、存储器子系统
组成和输入/输出(I/O)子系统组成。
2.1 计算机组成简介
计算机系统有硬件系统和软件系统组成。计算机硬件系统通常被分为 3 个主要部分或子系统:CPU\
存储子系统和 I/O 子系统,如图 2-1 所示。,
CPU 提供许多操作和控制计算机的功能.存储子系统用于存储被 CPU 执行的程序
及其数据.I/O 子系统可使 CPU 和输入/输出设备(比如个人计算机的键盘和显示器等)交互.
计算机的所有部件都通过总线相连.我们首先介绍系统总线.
2 .2 系统总线
物理上.总线就是一束金属线.它们被用于连接计算机系统的各个部件.从一个部件向其他部件发
送信息时,源部件输出数据到总线,目的部件从总线输入相应的数据.随着计算机系统复杂性的增加,使
用总线比各个设备直接相连更加有效.使用总线比大量的直接连接需要更小的电路板空间和电力,组成
CPU 的芯片或芯片组则需要更少的引脚.,
1.地址总线
在图中有 3 种系统总线.图中最上面的总线是地址总线.当 CPU 从存储器中读写数据或指令时,
它必须指定 CPU 要访间的存储单元的地址.CPU 输出地址到地址总线,存储器从地址总线输入地址并用
此地址存取正确的存储单元.每一个 I/O 设备,比如键盘、显示器或磁盘驱动器都有一个惟一地址.当访
问一个 I/O 设备时,CPU 输出 I/O 设备的地址到地址总线.每一个设备都可读取地址并判定是否是 CPU
所需要的设备.与其他总线不同,地址总线总是从 CPU 接收数据,而 CPU 从不读取地址总线.
2 .数据总线
数据通过数据总线进行传输.当 CPU 从存储器中读取数据时,它首先输出该存储器的地址到地址总
线,然后存储器将数据输出到数据总线,CPU 可以从数据总线读取数据。当向存储器写数据时,CPU 首
先输出地址到地址总线,然后输出数据到教据总线.
这样存储器就可以正确地读取数据并存放在正确的位置.I/O 设备读取数据和写数据的过程是相似的.
3 .控制总线
控制总线与其他两种总线不同.地址总线由 n 条线组成,以组合传输一个 n 位的地址值.与此相似,
数据总线的线路也是协同工作以传输单个多位的值.与此不同,控制总线由独立的控制信号组成.这些控
制信号指示数据是否读入 CPU 或从 CPU 写出,控制 CPU 是访问存储器还是 I/O 设备,判断存储器或 I/O
设备是否准备好传输数据.尽管这种总线确实是由单向信号组成的,但大多数信号是 CPU 输出到存储器和
I/O 子系统,少数是由这些子系统输出到 CPU .
系统可以具有总线型的层次结构.例如,用地址总线、数据总线和控制总线可以访问存储器和 I/O 控
制器.反之,I/O 控制器可以使用第二总线(通常被称为 I/O 总线或局部总线)访间所有 I/O 设备.在个人计
算机中比较常见的一个局部总线是 PCI 总线.
2 . 3 CPU 组成
在计算机中用于完成数据处理的部件称为中央处理器,简称 CPU.在微型计算机中常称为微处理器.
CPU 主要由 3 部分组成,如图 2 一 2 所示.
1.寄存器组
寄存器组存储指令执行过程的中间数据.顾名思义,寄存器组包括一组寄存器和一个总线或其他的
通信设备.系统地址总线和数据总线与 CPU 的这个部件交互.寄存器组还包括其他不被程序员直接访间
的寄存器.相对简单的 CPU 包含地址寄存器,临时存储寄存器和其他不是指令系统结构组成部分的寄存
器.
2 .ALU
算术逻辑单元(ALU )提供大多数的算术和逻辑操作,比如“加’或“与’操作.它从 CPU 的寄存器组
中接收操作数并将结果返回到寄存器组中.由于 ALU 必须在单个时钟周期内完成运算,所以 ALU 仅使用
一个组合逻辑来构成.
3 .控制器.
控制器(CU)控制寄存器之间的信息传输和指示 ALU 完成操作.这个控制器产生内部控制信号以
使寄存器调用数据、增加或清除其内容,输出其内容,并且使 ALU 执行正确的功能.控制器接收来自寄
存器组的一些数据值,并以此产生控制信号.这些数据包括指令代码和一些标记寄存器的值.控制器还产
生系统控制总线的信号,比如 READ
2 . ROM
ROM 芯片是为数据只读的应用程序而设计的。这些芯片在被加入到计算机系统之前.通过外部编程
器来写入数据。一旦完成.数据通常是不变的。ROM 芯片适用于这种情况.因为它具有非易失性.即当
断电时存储在 ROM 中的指令记录不会消失.当开机时.在 ROM 中固定程序引导计算机.为了引导计算
机.ROM 首先告诉 CPU 检测与计算机相连的输入、输出和存储设备.然后指示 CPU 检测磁盘是否包含
可以让用户开始发出命令的操作系统软件。在典型的个人计算机中 ROM 还有多种自检程序以便于很容易
地诊断和修复硬件错误。
根据固化程序的方式和时间长短.ROM 芯片被分为几种不同的类型。
(l)掩模 ROM
掩模 ROM .或简单的 ROM .在制作芯片时程序数据就被固化.制造这些芯片的掩膜技术设计时
内都需要使用数据硬连线.这些芯片对那些批量生产并且一旦装入数据便不可改变的用户产品非常有用。
并且一旦生产完毕.数据不能再更改.
(2) PROM
PROM 是可编程的 ROM 。与 ROM 不同.PROM 可以由使用任何标准的 PROM 的程序员来编写
程序。与硬连线相比.PROM 有一系列类似于熔丝的内部连接.向 PROM 编写数据本质上是熔断指定的
熔丝以使存储器的侮一个字存储正确的值.因为这些熔丝一旦熔断就不可恢复.PROM 仅能编写一次.这
些芯片适用于制造原型.也适用于可以使用 ROM 但考虑到 ROM 掩膜的成本,不能提供足够数量存储单
元的应用。
(3)EPROM
EPROM 是可擦写的 PROM .顾名思义.EPROM 像 PROM 一样可编写.但它的内容可擦除并可
重新编写.编写 EPROM 类似于给电容器充电。已充电和未充电的电容器使存储器中的每个字能存储正确
的值.这些芯片在表面有一个小的透明窗口,芯片放在紫外线下照射导致电容器泄漏电荷而被擦除.这样
就可以重新设置.芯片内容.当使用时.这个窗口通常用不透光的胶布盖着以防止任何室内灯光或日光的
紫外线不经意间破坏芯片内容.尽管它们是可擦写的.但常用于数据不变的应用中. EPROM 通常用于产
品开发实验室和原型等场合。
( 4 ) EEPROM 或( PROM )
EEPROM .有时表示为 PROM .是电擦写 PROM .除了其内容是通过电而不是紫外线来擦写和
重新编写外.它的工作方式与 EPROM 相同.与 EPROM 的必须全部擦除再重新编写不同.EEPROM 可
以更改个别单元而其他单元不变.另外,重新编写一个 EEPROM 只需几秒种.擦除一个 EPROM 则需大
概 20 分钟.EEPROM 适用于内容较少更改的应用.只要系统电路中含有具有重写芯片的可编程硬件.
EEPROM 常用于个人计算机的基本输入/输入系统或 BIOS .芯片通常不更改.除非新版本的软件应用时.
BIOS 被更改一次或两次。
(5)快闪 EEPROM (flash EEPROM )
一种特殊类型的 EEPROM 被称为快闪 EEPROM ,它是以电擦除方式擦除大块数据.而不是独立
的单元。它非常适用于写大量数据和用作固态硬盘.也被用于数码相机的数据存储.快闪 EEPROM 仅能
有限次地重写数据.这在当前限制了它在计算机系统中的广泛使用。
不同大小的 RAM 和 ROM 芯片是通用的.如果计算机需要比一个芯片更大容量的存储器.那么就
有必要组合多个芯片来满足存储器容量需要,
2.4.2 存储器分级体系
存储器分级体系包括在计算机系统中的所有存储设备.从低速但容量高的辅助存储器到相对较快的
主存.到更小更快的可接近高速处理逻辑的高速缓冲存储器.典型的存储器分级体系的组成如图 2 一所示.
直接与 CPU 通信的存储器被称为主存。提供备用存储的设备被称为辅助存储器。在计算机系统中最
常见的辅助存储器是磁盘和磁带。它们用来存储系统程序、大的数据文件和其他备份信息.只有 CPU 需
要的程序和数据放在主存中 .所有其他的信息存放在辅助存储器中 .当需要时才被传送到主存中。当 CPU
需要没有驻留在主存中的程序时.这些程序从辅助存储器中调入,当前在主存中不需要的程序被传送到辅
助存储器以便为当前使用的程序和数据提供空间。
有时可以使用一种被称为高速缓存(cache)的存储器使 CPU 可以快速地存取当前的程序和数据.从
而在计算机系统中使用高速缓存以弥补主存的存取时间和处理器之间的速度不同。CPU 通常比主存的存取
时间要快.以致处理速度主要受限于主存速度,为了弥补操作速度的不匹配.在 CPU 和主存之间采用伴
常快的小容量高速缓冲存储岩.它的存取时间接近于处理器的逻辑时钟周期。高速缓冲存储器用于存储当
前正在 CPU 中 被执行的程序段和当前计算需要的常用临时数据。通过使程序和数据在高速率下可用.提
高计算机性能就成为可能.
如图 2 一 3 所示.CPU 可直接访问高速缓冲存储储和主存,但不能直接访问辅存.在存储储分级
体系中.每个组成部分位于不同的层次上.由于经济原因在存储器分级体系中有两层或只层.随着存储器
存储容量的增大,存储每一位二进制信息的成本下降了.但存储器的存取时间加长了.辅存容量大并且相
对便宜.但与主存相比存取速度慢.高速缓冲存储器容量小.相对较贵.但有非常高的存取速度。这样随
着存储器存取速度的提高.相关费用也提高了.使用存储器分级体系的总目标是在最小化整个存储系统的
全部成本的同时获取尽可能高的平均存取速度。
2 . 5 I/O 子系统组成
本节主要介绍 I/O 设备、I/O 接口和传输模式.
2.5.1 .I/O 设备
1 .键盘
计算机键盘最初的设计目的是模仿打字机.从而使打字员更容易学会使用计算机.但是计算机技术
的需要导致键和键盘布局不再像以前打字机上看到的那样.打字机仅有 50 个键.而计算机键盘有 100 个
或更多键。计算机键盘上的键通常分为 4 类:字母数字键、功能键、光标键和数字键。字母数字键包括字
母、数字和标点符号,它们排列得很像打字机上的键。功能键是标有 Fl 、FZ 等一直到 F12 或 F15 的键,
它们用于给出像打印或退出程序等的普通命令.每个功能键的精确定义随程序不同而不同.光标键用于在
屏幕上移动光标.光标是小的闪烁符号.它在屏幕上显示将要发生事情的位置.当击键时.光标一直在最
后键入的字符的右边闪烁.光标键包括上移、下移、左移和右移箭头键.还包括上翻页、下翻页、开头和
结尾键.数字键区包括在标准计算器上有的数字键。
2. 鼠标
鼠标之所以流行是因为指向比击键更容易.也因为箭头键在屏幕上画图或移动不方便.鼠标有一个
塑料房状的外壳.外壳下有一滚动球.外壳上面有一个或多个按钮.当在桌面上移动鼠标时.内部的传感
器记录球的滚动并在屏幕上将光标移动到相应位置。使用鼠标发送命令有 3 种方式:第一种,可以单击按
钮来标识某一位置——可能是指出图片的哪一部分需要修改.第二.可拖动鼠标.也就是说,当移动鼠标
时可以一直按住按钮.拖动它可以在屏幕上移动图画。第三种方式是双击鼠标.即在大约半秒内连按两次
按钮.双击用于在屏幕上选择某些对象.
当然在所有的指示工具中最简单的是手指.事实上.触摸屏广泛用于商场的广告显示、信息亭、抽
奖游戏机和其他不需要用户非常熟悉计算机的场合.在这些机器上.只需触摸显示屏上想选择的部分.就
像按售货机上的按钮一样。依靠触摸屏上使用的传感方法.手指可以打断保护屏幕表面的红外线网络.这
样会告诉计算机所指的位置.
3.监视器
监视器或显示屏提供方便的但临时的方法来观看信息。最早的计算机监视器只是转换电视信号.当
普通电视还被用于打电子游戏时.现代大多数计算机程序已要求更高质量的监视器.获得更好的监视器有
两条路径:提高类电视屏的质量和开发平面显示器。
4 .打印机
不同种类的计算机打印机使用不同的技术.有的打印机使用喷墨技术;有的使用热感技术;有的使
用击打色带技术;还有的使用激光产生图像。激光打印机通过快速旋转的八角形镜子反射激光束到光敏滚
筒上来工作.喷墨打印机通过喷出细小的墨水滴到纸上来工作。点阵式打印机的特征是一个可移动的装有
一排小针头的打印头.针头打击色带到纸上以产生圆点的矩阵(或图案).当打印头在纸上来回移动时.圆
点可以形成字符或图片。
5 .调制解调器
调制解调器(modem 〕 是调制器-解调器的缩写.它用于计算机之间的通信,调制解调器将计算机
的电子脉冲转换成电话线可以传输的格式.当信号到达目的计算机时.另一个调制解调器将信号重新转换
为计算机可以识别的格式.有的调制解调器类似于书本大小.插在计算机的后面,有的则安装在计算机的
内部.
2 .5 .2 I/O 接口
输入一输出接口提供了一种在内部存储器和外部 I/O 设备之间传输信息的方法.连接到计算机的外
设为了能和中央处理器相接,需要特殊的通信链路.通信链路的目的是解决主机和外设存在的差别。主要
差别包括;
.外设是机电设备或电磁设备,它们的工作方式不同于电子的 CPU 和存储器的工作方式。这样就需
要信号值的转换.
.外设的数据传输速率通常比 CPU 的传输速率慢.因此需要一个同步装置。
.外设的数据编码和格式与 CPU 和存储器的字符格式不同。
.外设之间的操作模式是不同的.并且每一个外设必须是可控的.从而可以不影响其他与 CPU 连接
的外设的操作.
为了解决这些差别.计算机系统在 CPU 和外设之间含有特殊的硬件部件以管理和同步所有的输入和
输出传输。因为它们在处理器总线和外设之间提供接口.所以这些部件被称为接口单元.另外.每个设备
可能有自己的控制器来管理外设中特殊装置的操作.I/O 接口如图 2 ? 1 所示.每一个外设都与一个接口
单元相连.每一个接口对来自 I/O 总线的地址和控制进行解码.将它们解释给外设.并为外设控制器提供
信号。它还使数据流同步并管理外设和处理器之间的传输.
2 .5 .3 传输模式
从外部设备接收的二进制信息通常存储在存储器中以便于以后的处理.主机传输到外设的信息产生
于存储器,CPU 只是执行 I/O 指令并临时接收数据.但最终的信源或信宿是存储器.在主机和 I/O 设备之
间的数据传输可通过多种模式来操作一些模式用 CPU 当做中间路径.其他的直接从存储器传输数据。与
外设的数据传输可以通过 3 种可能的模式中的一种来操作:
.程序化 I/O
. 中断
.直接存储器存取(DMA 〕
1 .程序化 I/O
程序化 I/O 操作是通过执行写在计算机程序中的 I/O 指令完成的。每一个数据项的传输被程序中的一
条指令初始化.通常是在 CPU 寄存器和外设之间传输.其他指令需要在 CPU 和存储器之间传输数据。
程序控制下的数据传输需要 CPU 持续地监控外设。一旦数据传输开始.CPU 需要监控接口来发现什么时
候可以再传输.在 CPU 中执行的程序化指令可以密切监视发生在接口单元和 I/O 设备中的所有事情.
在程序化 I/O 方法中 . CPU 停留在程序循环中.一直到 I/O 单元表明已经准备好传输数据了。因为
它使处理器处于不必要的繁忙中, 所以这是一种浪费时间的处理方式.这是可以避免的.当来自于设备的
数据可用时,通过使用一个中断设备和特殊的命令来通知接口发出一个中断请求信号,期间 CPU 可以执
行其他程序.接口在此期间保持对设备的监控。当接口判定设备准备好传输数据时.它对计算机产生一个
中断请求。一旦检测到外部的中断信号,CPU 即刻停止正在处理的任务.跳转到处理 I/O 传输的服务程序.
完成服务程序后再返回到原来执行的任务。
2 .中断
设置 CPU 监控标记的一个可供选择的方法是让接口通知计算机什么时候它已准备好传输数据.这种
传输模式使用中断设备。当 CPU 运行一个程序时,它不用检测这个标记.但是当标记设置时.计算机即
刻中断当前执行的程序并被通知当前标记已被设置,CPU 离开当前正在执行的程序去完成输入或输出传
输.当传输完成后,计算机返回到以前的程序继续执行中断前所做的事情,
CPU 通过把程序计数器中的返回地址保存到存储器堆栈.从而响应中断信号.然后控制分支到处理
I/O 传输要求的服务程序.处理器选择不同单元的服务程序入口地址的方式是不同的.在原理上.有两种方
法可以实现.一种是被称为向量中断.另外一种是非向量中断。在非向量中断中.入口地址保存在存储器
的固定单元中。在向量中断中 .中断源向计算机提供入口信息.这个信息称为中断向量。在一些计算机中.
中断向量是一个地址.它指向存储器中存储 I/O 服务程序起始地址的单元。
3 .直接存储器存取(DMA)
可以提高计算机系统性能的另一种方法是在存储器和 I/O 设备之间传输数据.这是计算机系统中很普
遍的操作.将程序或数据文件从磁盘装入存储器、在磁盘上保存文件和访问在任何辅存上的虚拟内存页,
所有这些都属于这类操作.