1、计算机组成原理笔记 杨词慧1计算机组成原理俸远祯 阎慧娟 罗克露 编 电子工业出版社内容主要根据课后习题 A 组而整理,标 #号的代表不是书后的习题 A。本笔记完成时间:2002 年 12 月 5 日2003 年 1 月 14 日Email: n com第一章 概论一、 计算机系统的基本组成与特点(一) 电子数字计算机的基本组成A. #数字计算机硬件组成:1、运算器;2、存储器;3、控制器;4、输入设备;5、输出设备。见 P1 图。B. 计算机的操作可以归结为信息的传送,计算机内部存在着两大信息流:1、控制流:执行程序时,控制器依次取出指令序列,根据各指令的含义分时发出操作命令序列,这就形成一
2、种控制信息流,简称控制流。2、数据流:执行这些操作命令,从主存或寄存器中取出操作数据,送往运算器进行运算处理,再将运算器输出的处理结果送入某目的地,这样就形成一种数据信息流,简称数据流。C. # 1、从组成来看,构造硬件的基本思想:处理功能逻辑化,即用逻辑电路构造各种功能部件。2、从信息的表示与处理来看:信息表示数字化。本书的两条基线:信息如何表示;信息如何传送。(二) 存储程序与冯诺依曼体制A. 存储程序工作方式:计算机采取事先编制程序、存储程序、自动连续运行程序的工作方式。B. 诺依曼体制(诺依曼机) (一储二):1、采用二进制形式表示数据和指令;2、采用存储程序方式;3、由运算器、存储器
3、、控制器、输入装置和输出装置等五大部件组成计算机系统,并规定了这五部分的基本功能。C. 指令和数据都以数字代码形式存放在主存中,如何区分它们是指令还是数据?1、我们设置了一个指令计数器 PC,可按 PC 的内容作为地址读取指令,再按指令给出的操作数地址去读取数据;2、由于程序大多是顺序执行的,大多数指令需依次紧挨着存放,除个别即将使用的数据紧挨指令存放外,一般将指令和数据分别存放在该程序区的不同区域。(三) 信息的数字化表示A. 数字计算机:1、在计算机中各种信息用数字代码表示;2、在物理机制上,数字代码以数字型信号表示。这也即是:信息表示数字化 的含义。B. 1、模拟信号:是一种在时间上连续
4、的信号,用信号的某些参数(例如幅值)去模拟信息。缺点:精度低,表示范围小,搞干扰能力差,难于存储,难于表示如逻辑信息等其他类型的信息。2、数字信号:是一种在时间或空间上断续的(离散)信号;它的单个信号仅取有限的几种状态;依靠彼此离散的多位信号的组合表示广泛的信息;处理时可逐位处理。3、脉冲信号:信号正电平向正方向(或负方向)跳变,并维持很短的时间,然后回到原来的状态。4、电平信号:利用信号电平的高低表示不同状态值,通常定义高电平表示 1,低电平表示 0。C. 采用数字信号表示代码有何优点?(干扰范围实现类型逻辑)1、搞干扰能力强,可靠性高。2、倍数增多则数的表示范围扩大;3、在物理上容易实现,
5、并可存储;4、表示信息的类型与范围极其广泛;5、能用逻辑代数等数字逻辑技术进行处理,这就形成了计算机硬件设计的基础。(四) 数字计算机的特点A. 主要特点:(连通存储精度)1、能在程序控制下自动连续地工作;2、运算速度快;3、运算精度高;4、具有很强的信息存储能力;5、通用性强。二、 计算机系统的层次结构(一) 硬件系统A 硬件:是指系统中可触摸得到的设备实体,如前述五大部件等物理装置及将它们组织成一个计算机系统的体系结构。B CPU:运算器与控制器合称为中央处理器。#单片 CPU:将 CPU 集成于一块芯片之中,构成单片 CPU。C 主存储器:可由 CPU 按地址直接访问的,速度较快而容量有
6、一定限制,目前多用半导体存储器构成,又叫内存储器。计算机组成原理笔记 杨词慧2主机:中央处理器和主存储器。外存储器:作为主存后援的一级叫后援存储器,或称辅助存储器,由于位于主机范畴之外,又叫外存储器。如硬盘,容量很大但速度较主存慢。D 外围设备:输入与输出设备合称为 I/O 设备,由于在逻辑划分上也是位于主机之外,所以又称为外围设备或外部设备。(二) 软件系统A 软件:通常泛指各类程序和文件,实际上是由一些算法以及它们在计算机中的表示所构成,体现为一些触摸不到的二进制信息,所以称为软件。它的实体主要表现为程序。B 软件系统包含:1、系统软件:是一组为保证计算机系统良好运行而设置的基础软件,通常
7、作为系统资源即软设备提供给用户使用。它负责系统的调度管理,向用户提供服务。包括(操作语言数据服务标准):操作系统类、语言处理程序、数据库管理系统、各种服务性支撑软件、各种标准程序库。2、应用软件:指用户在各自应用领域中,为解决各类问题而编写的程序,也就是直接面向用户需要的一类软件。C 操作系统:是软件系统的核心。它是负责管理和控制计算机系统硬、软资源与运行程序的系统软件,是用户和计算机之间的接口,提供了软件的开发环境和运行环境。D 语言处理系统:用户往往是用程序设计语言编写程序,而将用户编写的源程序转换成计算机识别的机器语言的解释程序和编译程序泛称为语言处理程序。有两种基本方式:1、解释方式:
8、针对某种程序设计语言事先编制解释程序,使用时执行解释程序,对用程序设计语言编写的源程序边解释边执行;2、编译方式:针对某种程序设计语言事先编制编译程序,使用时执行编译程序,将源程序翻译成机器语言的目标程序,然后执行目标程序。E 数据库管理系统:负责装配数据、更新内容、查询检索、通信控制,对用数据库语言编写的程序进行翻译,控制有关的运行操作等的软件。#数据库:是在计算机存储设备上合理存放的、相互关联的数据的集合,能提供给所有可能的不同用户共享使用,独立维护。(三) 层次结构模型A 现代计算机系统如何进行多级划分?1、从硬软件组成角度划分:计算机系统的逐级生成过程:硬核(硬件系统):微程序控制器和
9、硬连逻辑部件;机器语言(指令系统) ;操作系统;语言处理程序(解释、编译) ;作为软件资源的应用程序;用户程序;数学模型、算法。计算机求解问题的过程:系统分析级;用户程序级;操作系统级;机器语言级(指令系统) ;微程序级。见 P11 图。2、从语言功能角度划分:实际机器(机器语言物理机) ;汇编语言虚拟机;高级语言虚拟机;专用语言虚拟机;程序。见 P12 图。B 物理机:计算机硬核的物理功能只是执行机器语言,称为机器语言物理机。虚拟机:是指通过配置软件扩充机器功能后,所形成的一台计算机,实际硬件在物理功能上并不具备这种语言功能。(四) 硬、软件界面与逻辑上的等价A 固件:微程序被固化在只读存储
10、器中。从信息形态上讲,微程序类似于软件;从器件形态上讲,它固化在硬件芯片内;从逻辑功能上讲,它属于 CPU 的范畴;因而称为固件。B #软硬件功能分配的三种策略:1、硬件软化:即领先软件实现以前硬件的一些功能;2、软件硬化;3、固件化。(五) 计算机组成原理涉及的几个层次A 涉及两个层次:1、计算机组织:对于硬件设计者,需要注意计算机硬件系统的具体实现,包括哪些组成部件,它们的工作原理、逻辑实现、设计方法,以及它们连接成整机的方法;2、计算机结构:(对于系统程序员与用户,更关心的是计算机系统的功能特性,特别是从硬件与软件交界面所看到的硬件功能特性,即硬件能实现哪些功能,能为软件提供哪些硬件支持
11、。所以着眼于与其功能特性有关的结构,这种结构模型常称为概念结构模型。这些泛指计算机结构。 )即硬件设计者与用汇编语言编写程序的用户看到的硬件系统概念结构与功能特性。三、 计算机硬件系统组织(一) 总线A 总线:是一组能为多个部件共享的公共信息传送线路,可以分时地接收与发送各部件的信息。B #总线按任务分为:1、CPU 内部总线;2、部件内总线;3、系统总线;4、外总线。按传送方向可分为:1、单向总线;2、双向总线。C 总线的数据通路宽度:总线能一次并行传送的数据位数。#数据传输率:单位时间能传送的数据量。(二) 以总线为基础的典型系统结构A 接口:泛指系统总线与外围设备之间的连接逻辑部件,通常
12、含有暂存信息的缓冲寄存器和一些控制逻辑。计算机组成原理笔记 杨词慧3(三) 采用通道或 IOP 的大型系统结构A 通道:是管理 I/O 操作的控制部件。 CPU 启动通道后可以继续进行本身的处理任务,由通道去执行通道程序,管理具体的 I/O 操作,从而使 CPU 中的数据处理与 I/O 操作得以同时进行。(四) 多机系统A #多机系统:一个系统中有多个 CPU。按多机之间连接的紧密程度分为:1、紧耦合多机系统。结构特点:通过总路线或交叉开关矩阵进行多机互连,多机间可以通过共享主存交换信息。2、松耦合多机系统。结构特点:用通信网络连接各节点,每个节点内有一个 CPU 和自身的存储器,甚至可有自己
13、的外存储器或其它外围设备;各机间以中断方式传送信息包,作为通信手段。四、 计算机的性能指标B 衡量计算机性能的基本指标(字主外转运算软件):1、基本字长;2、主存容量:字节数,单元数(字数)位数;3、外存容量;4、运算速度:CPU 时钟频率,每秒平均执行指令数(ips) ,单独注明时间;5、所配置的外围设备及其性能指标;6、系统软件配置情况。A 字节:每个存储单元有 8 位,称为一个字节。B 基本字长:指参与运算的数的基本位数。第二章 运算方法与运算器一、 数据信息的表示方法(一) 进位计数制及其相互转换A #运算方法的基本思想:各种复杂运算处理最终可分解为四则运算与基本的逻辑运算,而四则运算
14、的核心是加法运算。通过补码运算可化减为加,加减运算与移位的配合可实现乘除运算,阶码运算与尾数的运算组合可实现浮点运算。B #从信息传送角度理解运算器的组成原理,通过不同的输入选择,实现不同的运算功能。C 位权:在有权编码(与数位位置有关的编码方法)中,每个数码所表示的数值等于该数码乘以一个与所在数位有关的常数,这个常数就是该位的权。基数:某计数制中所允许选用的数码个数,即最大数码值加 1,就是该计数制的基数。D #十进制整数二整:1、减权定位法; 2、除基取余法。十小 二小:1、减权定位法;2、乘基取整法。二整十整:1、按权相加法;2、逐次乘基相加法。二小十小:1、按权相加法;2、逐次除基相加
15、法。(二) 带符号数的表示A 真值:日常使用的用正负符号加绝对值表示的数值。机器数:在计算机中使用的、连同数符一起数字化了的数。常用的机器数形式:原码、补码、反码。B 原码:约定数码序列中最高位为符号位,符号位为 0 表示该数为正,为 1 表示该数为负;其余有效数值部分则用二进制的绝对值表示。表示定义见 P28。C 补码:确定模以后,将某数 X 对该模的补数称为其补码。补码表示方法:如果数为正,则正数的补码与原码形式相同;如果数为负,则将负数原码除符号位外其余各位取反,末位再加 1,即得负数的补码。这是以有模运算为前提的。补码的统一定义式:X 补 =M+X(mod M)。表示定义见 P28。由
16、真值、原码转换为补码:正数表示与原码相同,负数:1、 “变反加 1”;2、符号位不变,尾数自低位向高位,第一个 1 及其后的各位 0 保持不变,以后的各位按位变反。由补码求真值与原码与上述两种方法相逆。D 反码:对原码的尾数逐位取反得到的一种机器数表示形式。表示定义见 P31。表示规则:正数表示与原码相同,负数:符号位为 1,尾数则由原码按位取反。E #1、正数的补码、反码与原码相同。2、数值 0 在原码表示中有两种形式,即+0 与-0。3、负数补码的表示范围比原码多一种数码组合:定点小数可至(-1) ,代码组合为 1.00;定点整数可至-2 n,代码组合为 100。(三) 定点表示法A 根据
17、小数点位置是否固定:1、定点表示;2、浮点表示。B 定点数:约定小数点位置固定不变的数。#1、无符号整数:将符号位略去的正整数,小数点在最低位之后;2、带符号定点整数:小数点在最低位之后;3、带符号定点小数:小数点在符号位之后,即纯小数。C 表示范围:1、无符号整数:02 n+1-1,分辨率:1;2、带符号定点整数:原码:-(2 n-1)2 n-1,补码:-2 n2n-1,分计算机组成原理笔记 杨词慧4辨率:1;3、带符号定点小数:原码:-(1-2 -n)1-2 -n,补码:-11-2 -n,分辨率:2 -n。D 浮点数:约定小数点位置不固定,根据需要而浮动的数。代码分成两个组成部分:阶码 E
18、 和尾数 M。真值N=REM。格式:E f E1 E2 Em Mf M1 M2Mn。E f 、M f 分别是阶符和数符。范围:-2 2m-122m-1(1-2 -n) 。分辨率:2 -2m 2-1。对于同一种系统,R 是隐含约定的常数,并不直接表现在浮点数代码中。E 为二进制负整数,可用补码或移码表示。M 可用补码或原码表示。E 规格化浮点数:为充分利用尾数部分的有效位数,使精度尽可能高,一般对浮点数采取规格化表示。以 R=2 为例,则规格化尾数的含义是满足条件:1/2|M|并转换,或对串代码中某一位进行判别。C 算术移位:在算术移位中,数字代码具有数值含义,且大多带有符号位,因此必须保持符号
19、位不变。#移位规则:1、原码(及正数补码):数符不变,空位补 0。左移:如采用单符号位且移位前绝对值已1/2,则左移会溢出,因而是不允许的;如采用双符号位则允许左移 1 位,第二符号位暂时用来保存有效数值。右移:如采用双符号位,则上次运算中暂存于第二符号位的数值,将移回最高有效位。2、负数补码左移:数符不变,空位即末位补 0;3、负数补码右移:数符不变,空位补 1。D #舍入规则:1、原码与补码采取“0 舍 1 入” (因为补码的末位与原码相同) ;负数反码采取“1 舍 0 借”:即当第n+1 位为 1 则舍去,若为 0,则舍去后在第 n 位减 1。2、原码与补码采取“恒置 1”,负数反码采取
20、末位“恒置 0”。E #最基本的逻辑运算:逻辑乘(与) ,逻辑加(或) ,求反(非) ,异或(按位加) 。基本运用:1、用异或运算判别两数是否相等,或二字符是否符合;2、用异或运算实现按位变反;3、用逻辑乘实现按位清零;4、用逻辑加实现按位置 1。三、 算术、逻辑运算基础(一) 全加器(加法单元) ,并行加法器与进位链结构A 全加器:一位二进制加法单元有三个输入量:操作数 Ai 与 Bi,低位传来的进位信号 Ci-1。它产生两个输出量:本位和 i,向高位的进位信号 Ci。这种考虑了全部三个输入的加法单元叫做全加器。半加器:只考虑两个输入的加法单元。见 P44 图及公式。全加器有:采用原变量输入
21、的全加器单元和采用反变量输入的全加器单元。B 串行加法器:每步只求一位和,将 n 位加分成 n 步实现,这种加法器称。并行加法器:用 n 位全加器一步实现 n 位相加,即 n 位同时相同,这种加法器称。它的逻辑结构包括两部分:全加器单元与进位链。 进位链:进位的产生是从低位开始,逐级向高位传播的。进位传递的逻辑结构形态好象链条,因此将进位传递逻辑称为进位链。C 进位信号的基本逻辑:C i=Gi+PiCi-1。进位产生函数(本地进位、绝对进位):上式中 Gi=AiBi,称为第 i 位的进位产生函数。逻辑含义:若本位的两输入量均为 1,必产生进位。进位传递函数(进位传送条件):上式中的 Pi。可选
22、取三种逻辑形式之一:(A 1 B1)、或 (A1 B1)、或(A 1+B1)。逻辑含义:若本位的两个输入中至少有一个为 1 时,则当低位有进位传来时,本位将产生进位。D 进位链结构:1、串行进位(行波进位):逐级形成各位进位,每一级进位直接依赖于前一级进位。2、并行进位计算机组成原理笔记 杨词慧5(先行进位、同时进位、跳跃进位):各位信号是独自形成的,并不直接依赖于前级。3、多重分组跳跃进位(分级同时进位,组内并行、组间并行的进位链):将进位链分为两级:第一级:小组内并行进位链;第二级:小组间并行进位链。见 P4547 公式。各位进位信号的逻辑式如下:E 串行进位:C 1=G1+P1C0=A1
23、B1+( A1 B1)C0C2=G2+P2C1=A2B2+( A2 B2)C1Cn=Gn+PnCn-1=AnBn+( An Bn)Cn-1F 并行进位:C 1=G1+P1C0C2=G2+P2G1+P2P1C0C3=G3+P3G2+ P3P2G1+P3P2P1C0Cn=Gn+PnGn-1+(PnP1)C0G 多重分组跳跃进位:假设加法器长 15 位,每 3 位一组。1、第一级:小组内并行进位链第一组:C 1=G1+P1C0C2=G2+P2G1+P2P1C0C3=G3+P3G2+ P3P2G1+P3P2P1C0第二组:C 4=G4+P4CC5=G5+P5G4+P5P4C2、第二级:小组间并行进位:
24、C 是组间并行进位链中第一小组产生的进位,G 是第一小组的进位产生函数,P 是第一小组的进位传递函数C =G +P C0C =G +P G +P P C0C =G +P G + P P G +P P P C0G =G3+P3G2+ P3P2G1P =P3P2P1C0(二) ALU 单元与多位 ALU 部件,十进制加法器A #多功能算术、逻辑运算部件 ALU:将若干位全加器、并行进位链、输入选择门三部分集成于一块芯片之上。B #一位 ALU 逻辑包括三部分:1、由两个半加器构成的全加器;2、对算术运算或逻辑运算的选择控制门 M;3、由与或非门构成的输入选择逻辑。见 P47 图及 P49 的 SN
25、74181 图。多位 ALU 部件:1、如采取组间串行进位结构,只需将几片 SN74181 简单级连即可,即将各片的进位输出 Cn+4 送往高位芯片的进位输入端 Cn。2、如采用组间并行进位结构,可增加并行进位链芯片 SN74182。SN74181 的使用有两种极性关系:1、输入反变量、输出反变量;2、输入原变量,输出原变量。C 处理十进制数有两种方法:1、先将输入的十进制数转换为二进制数,进行二进制数运算,再将运算结果转换为十进制数;2、采用二-十进制数,进行十进制运算。常用 8421 码:先对每个十进位按二进制相加;若和9,则结果不必校正;若和9,则和值再加 6,所产生的进位送往高位。C
26、i= Ci4 +A4A3+A4A2。四、 定点乘法运算(一) 原码一位乘法、补码一位乘法、原码两位乘法、补码两位乘法A 时序控制乘法器:多位乘需分解为多步实现,依靠时序控制分步,所以又称为时序控制乘法器。阵列乘法器:利用中、大规模集成电路芯片,在一拍中实现多项部分积的相加,这就形成另一类乘法器结构,称为阵列乘法器。B #原码一位乘法的处理思想:先当成两个正数相乘,再考虑“同号相乘为正,异号相乘为负” ,单独决定乘积符号。寄存器分配与初始值:A 寄存器:存放部分积累加和,初 0。B:存放被乘数 X。C :存放乘数 Y,运算中每乘一位,将 A 中的末位移入 C 高位。符号位 :A、B 均设置双符号
27、位,可用第二符号位暂存进位,第一符号位始终批示部分积的符号。操作步数:需 n 次累加移位(n 为乘数尾数位数) 。最后一步累加后不要忘了移位。见 P56 图。计算机组成原理笔记 杨词慧6C 实现补码乘法有两种方法:1、校正法:先按原码乘法那样直接乘,再根据乘数符号进行校正:不管被乘数 X 补 的符号如何,只要乘数 Y 补 为正,则可像原码乘法一样进行运算,结果不校正;如乘数 Y 补 为负,则先按原码乘法运算,结果再加一个校正量-X 补 。2、比较乘法( Booth 乘法):XY 补 =X补 0.Y1Y2Yn-X补 Y0。由此式可得推导式:XY补 =X补 (Y1-Y0)+2-1 (Y2-Y1)+
28、2-n (Yn+1-Yn)。这里 Y0 是 Y 的符号位,Y n+1 是增设的一个附加位,其初始值为0。D 补码一位乘的基本操作:被乘数 X 补 乘以对应的相邻两位乘数之差值,再与原部分积累加,然后右移一位,形成该步的部分积累加和。因每步要右移一位,所以参与比较的始终位于最末的 Yn+1、Y n 位。寄存器分配与初始值与原码一位乘相似。步数:n+1 步,最后一步不移位,因为这一步是用来处理符号位的。(二) 原码两位乘法、补码两位乘法、快速乘法简介A #两位乘法:每步(每拍)同时处理两位乘数,根据两位乘数的组合决定本拍内应该做什么操作,从而在一拍内求得与两位乘数相对应的部分积。运算速度比一位乘提
29、高近一位。B #原码两位乘法:通过将加数左斜一位送加法器可实现+2X,而把+3X 当作(4X-X)来处理,即本拍中只执行-X,用一个欠帐触发器 CJ 记下欠帐,到下一拍再补上+4X。因为每一拍累加部分积要右移两位,所以前一拍移位前欠下的+4X 操作,到了移位后的下一拍,只需执行+X 操作即可。寄存器分配与初始值与原码一位乘相似。符号位:但 A与 B 均取三符号位,C 取双符号位 00。C J 是一位独立的触发器。步数:(1+n)/2+1。见 P59 规则表。共 8 种。C #补码两位乘法:先按补码一位乘法分别列出两步的操作,再综合成一步两位操作,即可得 P61 规则表。共 8 种。D 带进位传
30、播加法器(简称 CPA):考虑进位。E 存储进位加法器(简称 CSA):基本思想是:在同一级加法器中将进位信息暂时保留,留待下一级加法器或更后面再处理(即加到下一级) 。这种思想使构成的多操作数加法网络分为若干级,前几级加法器是暂不考虑进位的 CSA,最后一级才是考虑进位的 CPA。伪加器:CSA 所用加法单元称为伪加器,所得的和叫伪加和。伪加器单元在逻辑上与全加器相同,但在外部功能上既可是两输入操作数与低位来进位信号的全加,也可是三操作数(无进位)的伪加。F #多操作数加法网络:1、柱形乘法器:第一级实现三操作数相加,对应于三项部分积。以后每一级加入一个操作数即一项部分积。每一级产生的伪加和
31、(暂不考虑进位) ,直传下一级对应的同一位,将进位左斜一位传至下一级。从进位角度看,同一级没有进位关系。第二级中三个输入为:a、第一级来的伪加和;b、新增加的部分积输入;c、第一级左斜一位传来的进位。这一级同级间也无进位。最后一级采用常规的带进位传播加法器 CPA,接受的三个输入为:a、上一级直传来的伪加和;b、本级 CPA 中的低位进位信号;c、上一级左斜一位传来的进位。这一级可采用并行进位链。2、树形乘法器:构成思想:在每一级用尽可能多的 CSA 单元,以处理在这一级可以相加的数位,从而减少整个加法网络的级数,提高速度。见 P63、64 图。G #阵列乘法器:以一位乘或两位乘为基础,同时形
32、成与整个乘数对应的多项部分积,用多操作数加法网络实现相加,一步求出乘积。芯片内包含两大部分:1、用若干与门产生与操作数数位对应的多个部分积数位;2、用多操作数加法网络求乘积。运用多操作数加法网络思想,可实现 mn 位的多位乘,并将它制成集成化阵列乘法器,再用化莱士树将若干块 mn 的芯片连接成更高位数的乘法器。五、 定点除法运算(一) 原码不恢复余数除法、补码不恢复除法、快速除法简介A #恢复余数法的处理思想:先减后判,如减后发现不够减,则商 0 并加除数,即恢复减前的余数。B 不恢复余数法除法(加减交替法):处理思想是:先减后判,如减后发现不够减,则下一步改作加除法操作。这样操作步数是固定的
33、,仅与所需商的位数有关。证明:1、若够减,则上商 Qi =1,下一步步做 2ri-Y;2、若不够减,即 ri =2ri-1-Y+I ,或由+I-I) 。无自同步能力。用于早期低速磁带机中。D 调相制(相位调制 PM,相位编码 PE):1、写 0 时,在位单元中间位置让写入电流负跳变,由+I-I;1、写 0 时,在位单元中间位置让写入电流正跳变,由-I+I。在这样的写入电流作用下,记录磁层中每个位单元中将有一次基本的磁通翻转,即用相位的不同来区分 0 与 1,所以称为相位编码。具有自同步能力。广泛用于常规磁带机中。E 调频制(FM):1、每个位单元起始处,写入电流都改变一次,留下一个转变区,作为
34、本位的同步信号;2、在位单元蹭记录数据信息。如写入 0,则位单元中间不变。如写入 1,则写入电流在位单元中间改变一次方向。是磁盘记录计算机组成原理笔记 杨词慧11方式的基础。F 改进型调频制(MFM,或 M2F):1、写 1 时,在位单元中间改变写入电流方向; 2、写入两个以上 0 时,在它们的交界处改变写入电流方向。思路:写 1 时,位单元中间的转变区用来表示数据 1 的存在,因此它应保留,但位单元交界处的转变区可省去。连续两个 0 都没有位单元中间的转变区,所以它们的交界处应当有 1 个转变区,产生同步信号。广泛用于软盘与小容量硬盘。G 群码制(GCR):将 4 位一组的数据码,整体转换成
35、 5 位一组的记录码;在数据码中连续 0 的个数不受限制,但在转换后的记录码中,连续 0 的个数不超过两个;将转换后的记录码按 NRZ1 制记入磁带中。H 游程长度受限码 RLLC(Run Length Limited Code):数据码长度 m 位,记录序列长度 n 位(m操作数地址 M操作数。用途:所占指令代码位数较少,可有效缩短指令长度;可提供全字长的地址码,使访存范围很宽;提供了地址变化的可能性;大大缩小地址段位数(注意这与缩短指令长度不完全相同) 。2、间址方式:习惯上指存储器间址,即指令中给出存放操作数地址的存储单元的地址,。寻址过程:间址单元地址 M操作数地址 M操作数。 用途:
36、在分时系统中几个用户通过间址方式共享某段程序; 某中断程序的入口地址可放在某个约定的间址单元;转子程序时将返回地址存放在某个约定的间址单元。3、自增型寄存器间址方式:指令中给出存放操作数地址的寄存器号,从寄存器中取出操作数地址后,寄存器内容加1, (R)+。寻址过程 :寄存器号 R操作数地址 M操作数 (R)+1。用途:适用于数组型操作,或对其它内容的连续数据块操作(寄存器中初值为数据块首址) ;还可用于堆栈弹出操作,指针先指向栈顶单元,将栈顶单元内容读出(弹出)后,指针加 1,指向新的栈顶单元。4、自减型寄存器间址方式:指令中给出寄存器号,其内容减 1 后作为操作数地址,按该地址取出操作数,
37、-(R) 。寻址过程:寄存器号 R寄存器内容减 1操作数地址 M操作数(R )+1。用途:适于对数组、其它内容的数据块作逆向操作;或用于堆栈压入操作:指针减 1,指向新的栈顶空单元,然后向新栈顶写入内容,操作结束后,指针指向栈顶的实存单元。4、堆栈寻址方式:设置了一个堆栈指针寄存器 SP,隐含约定 SP 的内容为栈顶单元的地址码,并可根据堆栈操作的性质自动修改 SP 的内容。指令中只需指明堆栈操作(操作码,或堆栈寻址方式) ,不需明显给出 SP 寄存器或存储地址。具体操作:一般在压栈时,先将 SP 内容减 1,指向新的栈顶空单元,然后向新栈顶写入内容,相当于-(SP )操作;弹出时,SP 内容
38、为当前栈顶的实存单元的地址,先读出栈顶单元内容,然后使 SP 加 1, ,指向新的栈顶实存单元,相当于(SP)+ 操作。优点:隐含约定堆栈指针,且具有自增型与自减型两种功能。5、多重间址方式:存储器多重间址。寻址过程:间址单元地址 M间址单元地址 M操作数地址 M操作数。寄存器。寻址过程:寄存器号 R间址单元地址 M操作数地址 M操作数。实际意义不很大。E 1、变址寻址方式:指令中给出变址寄存器号和一个形式地址,变址寄存器的内容与形式地址相加,得到操作数有效地址;按照有效地址访问某主存单元,该单元的内容即为操作数。指令格式:OP RX D。寻址过程:变址寄存器号 R变址量+ 形式地址 操作数地
39、址 M操作数。目的:为了灵活修改地址以适应连续区间(程序循环)的操作。用途:对数组进行操作,形式地址给出该数组在主存中的首址,变址寄存器存放位移量(即访问单元与首址单元之间的距离) ,通过修改变址寄存器的内容可访问数组中任一元素;将一个数据块从一个存储区迁移到另一个区间,可通过两条指令分别由形式地址给出它们的首址,但两条指令指向同一个变址寄存器,通过修改变址寄存计算机组成原理笔记 杨词慧16器的内容实现整个数据块的搬迁。注意:在定长指令格式中,形式地址往往不能提供全字长的地址码,变址寄存器的位数反而足以提供全字长的地址码。2、基址寻址方式:指令中给出基址寄存器号,形式地址给出位移量。基址寄存器
40、的内容与位移量相加,得到操作数有效地址;按照有效地址访问某主存单元,该单元的内容即为操作数。指令格式:OP RB D。目的:为了扩展有限字长指令的寻址空间。基址寄存器应能提供全字长的地址码,足以指向主存的任一单元。用途:如某机主存1MB,程序段的长度小于 64KB,且指令中形式地址只有 16 位,则可用这种方式,基址寄存器 20 位,存放程序段的首址,形式地址给出 16 位位移量,所形成的有效地址足以 1MB 存储空间,并满足程序运行的需要;分段分页可认为是这种方式的延伸与变化。3、基址加变址寻址方式:指令中给出基址寄存器号和变址寄存器号,形式地址给出位移量。操作数有效地址=基址量+变址量+位
41、移量。用途:方便处理两维数组:基 内容指向数组起始端,基 内容加位移量为一行数组的起点,而变内容为一行数组中元素与起点间的距离。执行过程中可方便修改基 与变内容。4、相对寻址(浮动编址)方式:选定程序计数器 PC 作为基址寄存器。指令中通过寄存器号选定程序计数器 PC,或隐含指定 PC,并在指令中给出位移量(可正可负) ;PC 内容与位移量相加,得到操作数有效地址,或是程序转移地址。用途:程序转移。5、页面寻址方式:将 PC 内容的高位段与位移量相拼接。操作数有效地址= (PC) H,d。 (PC ) H 作为页面号,d 作为页内地址。用途:采用页面管理的存储组织。6、扩展型变址寻址方式:变址
42、加间址的复合方式获得有效地址。前变址方式:先变址后间址。寻址过程:有效数S=(R)+d) ) , (R)+d)表示间址单元内容,即操作数有效地址。后变址方式:先间址后变址。寻址过程:有效数 S=(R)+(d) ) , (d)为间址单元内容, (R )+(d)为计算机后获得的有效地址。F 间址单元:在间址方式中,存放操作数地址的存储单元。程序运行的局部性:在某段时间内所需访问的指令和数据往往存放在一个有限的区间之内。 (可扩展)G #寻址方式如何表示:1、在指令中设置专门的寻址方式字段;2、由操作码隐含约定寻址方式。如何扩大寻址空间:1、通过变换表扩大有效地址位数;2、通过段寄存器:即内容左移
43、n 位,然后与偏移量相加,得到有效地址。(三) 堆栈操作A 堆栈:是一种按特殊顺序进行存取的存储区,最先压入的数据位于堆栈的底端(栈底) ,最后压入的数据位入堆栈的顶端(栈顶) 。存取顺序是“先进后出” (FILO)或“后进先出” (LIFO) 。栈顶:最后压入的数据位入堆栈的顶端(栈顶) 。堆栈指针 SP(Stack Pointer):堆栈中需设置一个指针指示浮动端,即当前可以访问的堆栈单元,称这个指针为堆栈指针或堆栈指示器。B RISC:即精简指令系统计算机,用一套精简的指令系统取代复杂的指令系统,从而提高 CPU 的速度。主要特点:指令集大大简化。程序执行时间=ICPIT。CISC :采
44、用复杂的指令系统来支持高级语言和操作系统,以达到进一步增强机器功能和提高速度的目的。机器指令1、如何减少一条指令中给出的地址数?又如何减少指令中表明一个地址信息的位数?2、建栈过程:自底向上生成方式。3、I/O 设备的编方法?编址单元是什么?4、不设置专门 I/O 指令的系统中,如何启动与控制 I/O 设备的工作。第五章 第六章 A 在 CRT 显示器中,为提供显示内容,需设置一个显示缓冲存储器,称为视频随机存储器 VRAM(Video RAM) ,其中存放一帧画面的有关信息。VRAM 中的内容一般包含:1、显示内容:提供显示字符代码,或是图象的象点信息;2、属性内容:提供有关显示的属性。这两
45、部分的内容可分别存放在两个缓冲存储器中:1、基本显示缓存;2、属性缓存。常将它们统一编址,一个偶数地址,一个奇数地址。属性缓存与显示缓存的容量相同。VRAM 中的内容与屏幕显示的对应关系:1、当用字符方式显示时,在缓存 RAM 中存放的是一帧待显示的 ASCII 码或其他形式的编码,字符的点阵信息则放在字符发生器(字库)中;缓存的最小容量是由屏幕上字符显示的行列规格来决定的,如一帧字符的显示规格为 25 行80 列,那么缓存的最小容量是 2KB。2、如果采用图形方式显示,那么缓存中的内容就是一帧待显示的图形的象点信息;缓存的容量不仅取决于屏幕分辨率的高低,还与显示的颜色种类有关,缓存的一个字节
46、可存放 8 个点,如屏幕分辨率为 200 线640 点,则缓存容量需 16KB(200640/8/1024 ) 。计算机组成原理笔记 杨词慧17第七章 输入输出系统一、 概述(一) 主机与外围设备间的连接模式与组织管理、总线类型与总线标准A 主机与外围设备间的连接模式:1、总线型:CPU 通过系统总线与外围设备相连,各外围设备通过各自的接口直接与公共的系统总线相连;2、辐射型(星型):在这种结构中,各外围设备与主机间有各自独立的数据,因而形成以主机为中心向各设备辐射的星型连接;3、通道型:通道:一种专门负责管理输入输出操作的控制器,它执行一种通道程序。CPU 启动通道后可并行地执行自身的程序,
47、而通道则执行通道程序,或以 DMA 方式实现主存与外围设备之间的数据直传,或让数据输入 CPU 或从 CPU 输出;4、输入输出处理机(IOP)方式:在大型计算机系统中,主机通过专门的数据通路与 IOP 连接,IOP 通过总线再与外围设备连接。B 辐射型(星型)连接与总线型连接的区别:各外围设备之间不能直接传送信息,它们只能通过接口送入主机,再由主机送往另外的设备,因而称为以主机为中心的星型连接模式。C 输入/输出系统:1、从硬件逻辑方面,包含外围设备、接口、系统总线;2、从软件方面,包含用户 I/O 程序,设备驱动程序,设备控制程序。D 同步控制:数据传送操作由统一的系统时钟同步定时,其显著
48、特征是有严格的时钟周期划分,一次传送操作所需的一个总线周期可能包含若干个时钟周期。应用:传送距离较短、系统内各设备差异不是很大的系统中。优点:控制比较简单,较易实现;缺点:时间利用上不够灵活,一些本可快速实现的操作也需占用固定的时钟周期。异步控制:对总线操作的控制与数据传送,以应答方式实现,其特征是没有固定的时钟周期划分,操作时间能短则短,需长则长。应用:传送距离较长、系统内各设备差异不是较大的系统中。优点:时间选择比较灵活,利用率高;缺点:控制比较复杂。设备控制器,适配卡,IOP,总线,系统总线,系统外总线;I/O 扩展总线,局部总线,通信总线,存储总线,并行总线,串行总线,同步总线,异步总线,(二) 接口的功能与分类A 接口:泛指设备部件(硬、软)之间的交接部分。输入输出接口:主机(系统总线)与外围设备或其它外部系统之间的接口逻辑,称为输入/输出接口,简写为 I/O 接口。软件接口:软件模块之间的交接部分。软硬接口:硬件和软件的相互作用,所涉及到的硬件逻辑与软件。B 并行接口:接口与系统总线之间、接口与外围设备之间,都以并行方式传送数据信息。串行接口:接口与外围设备之间,采用串行方式传送数据;而接口与系统总线之间仍以并行方式传送数据,除非总线本身要求串行。选用哪种接口:1、取决于设备本身的工作方式,是串行传送还是并行传送;2、与传