计算机组成原理答案

上传人:cl****1 文档编号:588379168 上传时间:2024-09-08 格式:PPT 页数:285 大小:1.01MB
返回 下载 相关 举报
计算机组成原理答案_第1页
第1页 / 共285页
计算机组成原理答案_第2页
第2页 / 共285页
计算机组成原理答案_第3页
第3页 / 共285页
计算机组成原理答案_第4页
第4页 / 共285页
计算机组成原理答案_第5页
第5页 / 共285页
点击查看更多>>
资源描述

《计算机组成原理答案》由会员分享,可在线阅读,更多相关《计算机组成原理答案(285页珍藏版)》请在金锄头文库上搜索。

1、计算机系统概论计算机系统概论第第 一一 章章习习 题题 与与 题题 解解 1. 什么是什么是计算机系统计算机系统、计、计算机算机硬件硬件和计算机和计算机软件软件?硬件?硬件和软件哪个和软件哪个更重要更重要? 解:解:P3 计算机系统计算机系统计算机硬计算机硬件、软件和数据通信设备的物件、软件和数据通信设备的物理或逻辑的理或逻辑的综合体综合体。 计算机硬件计算机硬件计算机的计算机的物理实体物理实体。 计算机软件计算机软件计算机运计算机运行所需的行所需的程序程序及相关资料。及相关资料。 硬件和软件在计算机系统硬件和软件在计算机系统中相互依存,缺一不可,因此中相互依存,缺一不可,因此同样重要同样重要

2、。 5. 冯冯诺依曼计算机的特诺依曼计算机的特点点是什么?是什么? 解:冯氏计算机的解:冯氏计算机的特点特点是:是:P9 由运算器、控制器、存储由运算器、控制器、存储器、输入设备、输出设备器、输入设备、输出设备五大部五大部件组成件组成; 指令和数据以指令和数据以同一形式同一形式(二进制形式)存于存储器中;(二进制形式)存于存储器中; 指令由操作码、地址码指令由操作码、地址码两大部分两大部分组成;组成; 指令在存储器中指令在存储器中顺序存顺序存放放,通常,通常自动顺序取出执行自动顺序取出执行; 以以运算器为中心运算器为中心(原始(原始冯氏机)。冯氏机)。 7. 解释下列概念:解释下列概念:主机、

3、主机、CPU、主存、存储单元、主存、存储单元、存储元件、存储基元、存储元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、存储字、存储字长、存储容量、机器字长、指令字长。机器字长、指令字长。 解:解:P10 主机主机是计算机硬件的是计算机硬件的主体主体部分,部分,由由CPU+MM(主存主存或内存)组成;或内存)组成; CPU中央处理器(机)中央处理器(机),是计算机硬件的,是计算机硬件的核心核心部件,部件,由运算器由运算器+控制器控制器组成;组成; 主存主存计算机中存放正计算机中存放正在运行的程序和数据的存储器,在运行的程序和数据的存储器,为计算机的主要工作存储器,为计算机的主要工作存

4、储器,可随机存取;可随机存取; 存储单元存储单元可可存放一个存放一个机器字机器字并并具有特定存储地址具有特定存储地址的的存储单位;存储单位; 存储元件存储元件存储一位二存储一位二进制信息进制信息的物理元件,是存储的物理元件,是存储器中最小的存储单位,又叫器中最小的存储单位,又叫存存储基元储基元或或存储元存储元,不能单独存不能单独存取;取; 存储字存储字一个存储单元一个存储单元所存二进制代码的所存二进制代码的逻辑单位逻辑单位; 存储字长存储字长一个存储一个存储单元所存单元所存二进制代码的位数二进制代码的位数; 存储容量存储容量存储器中存储器中可存二进制代码的可存二进制代码的总量总量; 机器字长机

5、器字长CPU能能同同时处理时处理的数据位数;的数据位数; 指令字长指令字长一条指令一条指令的的二进制代码二进制代码位数;位数; 8. 解释下列解释下列英文缩写的中文英文缩写的中文含义含义:CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS 解:解: CPUCentral Processing Unit,中央处理机中央处理机(器),(器),见见7题;题; PCProgram Counter,程序计数器程序计数器,存放当前欲执行存放当前欲执行指令的地址指令的地址,并可,并可自动计数形成自动计数形成下一条指令地址下一条指令地址的计数器;的计数器;

6、 IRInstruction Register,指令寄存器指令寄存器,存放当前正在执行存放当前正在执行的指令的指令的寄存器;的寄存器; CUControl Unit,控制单元控制单元(部件),控制器中(部件),控制器中产生微操作命令序列产生微操作命令序列的部件,的部件,为控制器的核心部件;为控制器的核心部件; ALUArithmetic Logic Unit,算术逻辑运算单算术逻辑运算单元元,运算器中,运算器中完成算术逻辑运完成算术逻辑运算算的逻辑部件;的逻辑部件; ACCAccumulator,累加器累加器,运算器中运算前存放,运算器中运算前存放操作数、运算后操作数、运算后存放运算结果存放运

7、算结果的寄存器;的寄存器; MQMultiplier-Quotient Register,乘商寄乘商寄存器存器,乘法运算时,乘法运算时存放乘数存放乘数、除法时除法时存放商存放商的寄存器。的寄存器。 X此字母没有专指的此字母没有专指的缩写含义,可以用作任一部件缩写含义,可以用作任一部件名,在此表示名,在此表示操作数寄存器操作数寄存器,即运算器中工作寄存器之一,即运算器中工作寄存器之一,用来用来存放操作数存放操作数; MARMemory Address Register,存储器地存储器地址寄存器址寄存器,内存中用来,内存中用来存放欲存放欲访问存储单元地址访问存储单元地址的寄存器;的寄存器; MDR

8、Memory Data Register,存储器数据缓冲寄存储器数据缓冲寄存器存器,主存中用来,主存中用来存放存放从某单从某单元元读出读出、或、或写入写入某存储单元某存储单元数数据的寄存器据的寄存器; I/OInput/Output equipment,输入输入/输出设备输出设备,为输入设备和输出设备的总称,为输入设备和输出设备的总称,用于计算机用于计算机内部和外界信息的内部和外界信息的转换与传送转换与传送; MIPSMillion Instruction Per Second,每秒执行百万条指令数每秒执行百万条指令数,为计,为计算机运算速度指标的一种算机运算速度指标的一种计量计量单位单位;

9、CPICycle Per Instruction,执行一条指令所执行一条指令所需时钟周期数需时钟周期数,计算机运算速,计算机运算速度指标度指标计量单位计量单位之一;之一; FLOPSFloating Point Operation Per Second,每秒浮点运算次数每秒浮点运算次数,计算机,计算机运算速度运算速度计量单位计量单位之一。之一。 10. 指令和数据指令和数据都存于都存于存储器中存储器中,计算机如何计算机如何区分区分它们?它们? 解:计算机硬件主要解:计算机硬件主要通通过不同的时间段过不同的时间段来区分指令来区分指令和数据,即:和数据,即:取指周期取指周期(或(或取指微程序)取出

10、的既为指取指微程序)取出的既为指令,令,执行周期执行周期(或相应微程(或相应微程序)取出的既为数据。序)取出的既为数据。 另外也可另外也可通过地址来源通过地址来源区分区分,从,从PC指出的存储单元指出的存储单元取出的是指令,由取出的是指令,由指令地址指令地址码码部分提供操作数地址。部分提供操作数地址。返回返回返回返回目录目录目录目录系系 统统 总总 线线第第 三三 章章 1. 什么是什么是总线总线?总线传输?总线传输有何有何特点特点?为了减轻总线负载,?为了减轻总线负载,总线上的总线上的部件部件应具备什么特点?应具备什么特点? 解:总线是解:总线是多个部件共享多个部件共享的传输部件;的传输部件

11、; 总线传输的总线传输的特点特点是:某一是:某一时刻只能有一路信息在总线上传时刻只能有一路信息在总线上传输,输,即分时使用;即分时使用; 为了减轻总线负载,总线为了减轻总线负载,总线上的部件应通过上的部件应通过三态驱动缓冲电三态驱动缓冲电路路与总线连通。与总线连通。 4. 为什么要设置为什么要设置总线判优总线判优控制控制?常见的集中式总线控制有?常见的集中式总线控制有几种几种?各有何?各有何特点特点?哪种方式响?哪种方式响应时间应时间最快最快?哪种方式对电路故?哪种方式对电路故障障最敏感最敏感? 解:总线判优控制解:总线判优控制解决多解决多个部件同时申请总线时的使用权个部件同时申请总线时的使用

12、权分配问题分配问题; 常见的集中式总线控制有常见的集中式总线控制有三种三种:链式查询、计数器查询、独立请链式查询、计数器查询、独立请求;求; 特点:特点:链式查询方式连线链式查询方式连线简单,易于扩充,简单,易于扩充,对电路故障最对电路故障最敏感敏感;计数器查询方式;计数器查询方式优先级设优先级设置较灵活置较灵活,对故障不敏感,连线,对故障不敏感,连线及控制过程较复杂;独立请求方及控制过程较复杂;独立请求方式式判优速度最快判优速度最快,但硬件器件用,但硬件器件用量大,连线多,成本较高。量大,连线多,成本较高。 5. 解释下列概念解释下列概念:总线的:总线的主设备(或主模块)、总线的主设备(或主

13、模块)、总线的从设备(或从模块)、总线的从设备(或从模块)、总线的传输周期和总线的通信控制。传输周期和总线的通信控制。 解:解: 总线的主设备总线的主设备(主模块)(主模块)指一次总线传输期间,指一次总线传输期间,拥拥有总线控制权有总线控制权的设备(模块);的设备(模块); 总线的从设备总线的从设备(从模块)(从模块)指一次总线传输期间,指一次总线传输期间,配配合合主设备完成传输的设备(模主设备完成传输的设备(模块),它只能块),它只能被动接受被动接受主设备主设备发来的命令;发来的命令; 总线的传输周期总线的传输周期总线完成总线完成一次完整而可靠一次完整而可靠的传输的传输所需时间;所需时间;

14、总线的通信控制总线的通信控制指总线传送过程中双方的指总线传送过程中双方的时间配合方式时间配合方式。 6. 试试比较同步通信和异步比较同步通信和异步通信通信。 解:解: 同步通信同步通信由统一时钟由统一时钟控制的通信控制的通信,控制方式简单,控制方式简单,灵活性差,当系统中各部件工灵活性差,当系统中各部件工作速度差异较大时,总线工作作速度差异较大时,总线工作效率明显下降。适合于速度差效率明显下降。适合于速度差别不大的场合;别不大的场合; 异步通信异步通信不由统一时不由统一时钟控制的通信,钟控制的通信,部件间部件间采用应采用应答方式答方式进行联系,控制方式较进行联系,控制方式较同步复杂,灵活性高,

15、当系统同步复杂,灵活性高,当系统中各部件工作速度差异较大时,中各部件工作速度差异较大时,有利于提高总线工作效率。有利于提高总线工作效率。 8. 为什么说为什么说半同步通半同步通信同时保留信同时保留了同步通信和异了同步通信和异步通信的特点?步通信的特点? 解:解: 半同步通信半同步通信既能像既能像同步同步通信通信那样那样由统一时钟控制由统一时钟控制,又能像又能像异步通信异步通信那样那样允许传允许传输时间不一致输时间不一致,因此因此工作效工作效率介于两者之间率介于两者之间。 10. 为什么要设置为什么要设置总线总线标准标准?你知道目前?你知道目前流行的总流行的总线标准线标准有哪些?什么叫有哪些?什

16、么叫plug and play?哪些总线有哪些总线有这一这一特点?特点? 解:解: 总线标准的设置总线标准的设置主要解主要解决不同厂家各类模块化产品决不同厂家各类模块化产品的的兼容兼容问题;问题; 目前流行的总线标准有:目前流行的总线标准有:ISA、EISA、PCI等;等; plug and play即即插即用插即用,EISA、PCI等具有等具有此功能。此功能。 11. 画一个具有画一个具有双向传输功能的总线双向传输功能的总线逻辑图。逻辑图。 解:此题实际上是要求设计一个解:此题实际上是要求设计一个双向双向总线收发器总线收发器,设计要素为设计要素为三态三态、方向、使方向、使能能等控制功能的实现

17、,可参考等控制功能的实现,可参考74LS245等等总线缓冲器芯片内部电路。总线缓冲器芯片内部电路。 逻辑图逻辑图如下:如下:(n位)位)GDIRA1B1AnBn 12. 设数据总线上接有设数据总线上接有A、B、C、D四个寄存器,要求四个寄存器,要求选用合适的选用合适的74系列芯片系列芯片,完,完成下列逻辑设计:成下列逻辑设计: (1) 设计一个电路,在同设计一个电路,在同一时间实现一时间实现DA、DB和和DC寄存器间的传送;寄存器间的传送; (2) 设计一个电路,实现设计一个电路,实现下列操作:下列操作: T0时刻完成时刻完成D总线;总线; T1时刻完成时刻完成总线总线A; T2时刻完成时刻完

18、成A总线;总线; T3时刻完成时刻完成总线总线B。 解:解: (1)采用)采用三态输出三态输出的的D型寄存型寄存器器74LS374做做A、B、C、D四个寄四个寄存器,其存器,其输出可直接挂总线输出可直接挂总线。A、B、C三个寄存器的输入三个寄存器的输入采用同一脉冲打采用同一脉冲打入入。注意。注意-OE为为电平控制电平控制,与打入,与打入脉冲间的时间配合关系为:脉冲间的时间配合关系为: -OE-OE: 令:令:令:令:BUSBUSA=BUSA=BUSB=BUSB=BUSC=CPC=CP; D DBUS= -OEBUS= -OE;当当当当CPCP前沿到来时,将前沿到来时,将前沿到来时,将前沿到来时

19、,将D DA A、B B、C C。 现以现以8位总线为例,设计此电路,如下图位总线为例,设计此电路,如下图示:示:数据总线数据总线数据总线数据总线D7D7D0D0BUSBUSA A1Q 8Q1Q 8QOE OE 1D 8D 1D 8D374374 D D1Q 8Q1Q 8QOE OE 1D 8D 1D 8D374374 A A1Q 8Q1Q 8QOE OE 1D 8D 1D 8D374374 B B1Q 8Q1Q 8QOE OE 1D 8D 1D 8D374374 C CBUSBUSC CBUSBUSB BBUSBUSD DD DBUSBUSC CBUSBUSB BBUSBUSA ABUSBU

20、S (2)寄存器设置同()寄存器设置同(1),由),由于本题中发送、接收不在同一节拍,于本题中发送、接收不在同一节拍,因此总线需设因此总线需设锁存器缓冲锁存器缓冲,锁存器,锁存器采用采用74LS373(电平使能输入)。电平使能输入)。节拍、脉冲配合关系如下:节拍、脉冲配合关系如下:时钟:时钟:时钟:时钟: CLKCLK:节拍电平:节拍电平:节拍电平:节拍电平:TiTi:打入脉冲:打入脉冲:打入脉冲:打入脉冲:PiPi: 图中,脉冲图中,脉冲图中,脉冲图中,脉冲包包包包在电平中,为了在电平中,为了在电平中,为了在电平中,为了留有较留有较留有较留有较多的多的多的多的传送时间,脉冲设置在靠近电平传送

21、时间,脉冲设置在靠近电平传送时间,脉冲设置在靠近电平传送时间,脉冲设置在靠近电平后沿后沿后沿后沿处处处处。 节拍、脉冲分配逻辑如下:节拍、脉冲分配逻辑如下:二位二位二位二位格雷格雷格雷格雷码同码同码同码同步计步计步计步计数器数器数器数器1 1&1 11 11 1G Y0G Y0 Y1 Y11/21391/2139 Y2 Y2A A B Y3B Y31 1CLKCLKP0P0P1P1P2P2P3P3T0T0T1T1T2T2T3T3-T0-T0-T1-T1 -T2 -T2-T3-T3节拍、脉冲时序图如下:节拍、脉冲时序图如下:时钟:时钟:时钟:时钟:CLKCLK:输出:输出:输出:输出: T0T0

22、: T1T1: T2T2: T3T3:输入:输入:输入:输入: P0P0: P1P1: P2P2: P3P3: 以以8位总线为例,电路设计如下:位总线为例,电路设计如下:(图中,(图中,A、B、C、D四个寄存器与数据总线四个寄存器与数据总线的连接方法同上。)的连接方法同上。)=1=11Q 8Q1Q 8QOE OE 1D 8D 1D 8D374374 A A1Q 8Q1Q 8QOE OE 1D 8D 1D 8D374374 B BBUSBUSB BD DBUSBUSC CBUSBUSB BBUSBUSA ABUSBUSBUSBUSA A1Q 8Q1Q 8QOE OE 1D 8D 1D 8D374

23、374 D DBUSBUSD D1Q 8Q1Q 8Q OE G OE G 1D 8D1D 8D3733731Q 8Q1Q 8QOE OE 1D 8D 1D 8DBUSBUSC C374374 C C=1=1T1 T3 T0 T2T1 T3 T0 T2数据总线(数据总线(数据总线(数据总线(D7D0D7D0)令:令:令:令:A ABUS = -T2BUS = -T2 D DBUS = -T0BUS = -T0 BUS BUSA = P1A = P1 BUS BUSB = P3B = P3返回目录返回目录返回目录返回目录存存 储储 器器第第 四四 章章 4. 说明存取周期和存取时间的说明存取周期和

24、存取时间的区别区别。 解:存取周期和存取时间的主解:存取周期和存取时间的主要要区别区别是:是:存取时间仅为完成一次存取时间仅为完成一次操作的时间操作的时间,而存取周期不仅包含,而存取周期不仅包含操作时间,还包含操作后线路的操作时间,还包含操作后线路的恢恢复时间复时间。即:。即: 存取周期存取周期 = 存取时间存取时间 + 恢复恢复时间时间 5. 什么是存储器的什么是存储器的带宽带宽?若存?若存储器的数据总线宽度为储器的数据总线宽度为32位,存取位,存取周期为周期为200ns,则存储器的带宽是则存储器的带宽是多少?多少? 解:存储器的带宽指解:存储器的带宽指单位时间单位时间内从存储器进出信息的最

25、大数量内从存储器进出信息的最大数量。 存储器带宽存储器带宽 = 1/200ns X 32位位= 160M位位/秒秒 = 20MB/S = 5M字字/秒秒 6. 某机字长为某机字长为32位,其存储位,其存储容量是容量是64KB,按字编址按字编址它的寻址它的寻址范围是多少?若主存范围是多少?若主存以字节编址以字节编址,试画出主存字地址和字节地址的分试画出主存字地址和字节地址的分配情况。配情况。 解:存储容量是解:存储容量是64KB时,时,按按字节编址的寻址范围就是字节编址的寻址范围就是64KB,则:则: 按字寻址范围按字寻址范围 = 64KX8 / 32=16K字字 按字节编址时的主存地址分配图按

26、字节编址时的主存地址分配图如下:如下:0 01 12 236 65 54 4655346553465532655327 765535655356553365533字地址字地址字地址字地址 HB HB 字节地址字节地址字节地址字节地址LBLB0 04 48 865528655286553265532 7. 一个容量为一个容量为16KX32位的存位的存储器,其储器,其地址线和数据线的总和地址线和数据线的总和是是多少?当选用下列不同规格的存储多少?当选用下列不同规格的存储芯片时,各需要多少片?芯片时,各需要多少片? 1KX4位,位,2KX8位,位,4KX4位,位,16KX1位,位,4KX8位,位,8

27、KX8位位 解:解:地址线和数据线的总和地址线和数据线的总和 = 14 + 32 = 46根根; 各需要的片数为:各需要的片数为: 1KX4:16KX32 / 1KX4 = 16X8 = 128片片 2KX8:16KX32 / 2KX8 = 8X4 = 32片片 4KX4:16KX32 / 4KX4 = 4X8 = 32片片 16KX1:16KX32 / 16KX1 = 32片片 4KX8:16KX32 / 4KX8 = 4X4 = 16片片 8KX8:16KX32 / 8KX8 = 2X4 = 8片片 9. 什么叫什么叫刷新刷新?为什么为什么要刷新要刷新?说明刷新有?说明刷新有几种方法几种方

28、法。 解:解:刷新刷新对对DRAM定期定期进进行的行的全部重写全部重写过程;过程; 刷新原因刷新原因因因电容泄漏电容泄漏而引而引起的起的DRAM所存信息的衰减需要所存信息的衰减需要及及时补充时补充,因此安排了定期刷新操作;,因此安排了定期刷新操作; 常用的刷新方法常用的刷新方法有三种有三种集集中式中式、分散式、异步式分散式、异步式。 集中式:集中式:在最大刷新间隔时间在最大刷新间隔时间内,内,集中安排集中安排一段时间进行刷新;一段时间进行刷新; 分散式:分散式:在每个读在每个读/写周期之写周期之后后插入一个插入一个刷新周期,无刷新周期,无CPU访存访存死时间;死时间; 异步式:异步式:是集中式

29、和分散式的是集中式和分散式的折衷折衷。 10. 半导体存储器芯片的半导体存储器芯片的译码译码驱动方式驱动方式有几种?有几种? 解:半导体存储器芯片的译解:半导体存储器芯片的译码驱动方式有码驱动方式有两种两种:线选法线选法和和重重合法合法。 线选法:线选法:地址译码信号只地址译码信号只选选中同一个字的所有位中同一个字的所有位,结构简单,结构简单,费器材;费器材; 重合法:重合法:地址地址分行分行、列两部列两部分译码分译码,行、列译码线的,行、列译码线的交叉点交叉点即为所选单元。这种方法通过行、即为所选单元。这种方法通过行、列译码信号的列译码信号的重合重合来选址,也称来选址,也称矩阵译码矩阵译码。

30、可大大节省器材用量,。可大大节省器材用量,是是最常用最常用的译码驱动方式。的译码驱动方式。 11. 画出用画出用1024X4位位的存储芯的存储芯片组成一个容量为片组成一个容量为64KX8位位的存储的存储器逻辑框图。要求将器逻辑框图。要求将64K分成分成4个页个页面面,每个页面分,每个页面分16组组,指出共需多,指出共需多少片存储芯片。少片存储芯片。 解:设采用解:设采用SRAM芯片,芯片, 总片数总片数 = 64KX8位位 / 1024X4位位 = 64X2 = 128片片 题意分析题意分析:本题设计的存储器:本题设计的存储器结构上分为结构上分为总体总体、页面、组三级页面、组三级,因此画图时也

31、应分三级画。首先应因此画图时也应分三级画。首先应确定各级的容量:确定各级的容量: 页面容量页面容量 = 总容量总容量 / 页面数页面数 = 64KX8位位 / 4 = 16KX8位位; 组容量组容量 = 页面容量页面容量 / 组数组数 = 16KX8位位 / 16 = 1KX8位位; 组内片数组内片数 = 组容量组容量 / 片容量片容量 = 1KX8位位 / 1KX4位位 = 2片片;地址分配:地址分配:1KX41KX4SRAMSRAM1KX41KX4SRAMSRAMA A9090-WE-WE- -CSiCSiD D7 7D D6 6D D5 5D D4 4 D D3 3D D2 2D D1

32、1D D0 0页面号页面号页面号页面号 组号组号组号组号 组内地址组内地址组内地址组内地址2 4 102 4 10 组逻辑图如下:(组逻辑图如下:(位扩展位扩展)1KX81KX8 页面逻辑框图:(页面逻辑框图:(字扩展字扩展)1KX81KX8(组(组(组(组0 0)1KX81KX8(组(组(组(组1 1)1KX81KX8(组(组(组(组2 2)1KX81KX8(组(组(组(组1515)组组组组译译译译码码码码器器器器4:16-CS0-CS0-CS1-CS1-CS2-CS2-CS15-CS15A A9090 -WE D -WE D7070A10A10A11A11A12A12A13A13- -CE

33、iCEi16KX816KX8 存储器逻辑框图:(存储器逻辑框图:(字扩展字扩展)16KX816KX8(页面页面页面页面0 0)16KX816KX8(页面页面页面页面1 1)16KX816KX8(页面页面页面页面2 2)16KX816KX8(页面页面页面页面3 3)页页页页面面面面译译译译码码码码器器器器2:42:4A14A14A15A15-CE0-CE0-CE1-CE1-CE2-CE2-CE3-CE3A130 -WE D70A130 -WE D70 12. 设有一个设有一个64KX8位位的的RAM芯片,试问该芯片共有多少个芯片,试问该芯片共有多少个基本基本单元单元电路(简称存储基元)?欲设电路

34、(简称存储基元)?欲设计一种具有上述同样多存储基元的计一种具有上述同样多存储基元的芯片,要求对芯片字长的选择应满芯片,要求对芯片字长的选择应满足足地址线和数据线的总和为最小地址线和数据线的总和为最小,试确定这种芯片的地址线和数据线,试确定这种芯片的地址线和数据线,并说明有并说明有几种几种解答。解答。 解:解:存储基元总数存储基元总数 = 64KX8位位 = 512K位位 = 219位位; 思路思路:如要满足地址线和数据:如要满足地址线和数据线总和最小,应尽量把存储元安排线总和最小,应尽量把存储元安排在在字向字向,因为地址位数和字数成,因为地址位数和字数成2的幂的幂的关系,可较好地的关系,可较好

35、地压缩压缩线数。线数。 设地址线根数为设地址线根数为a,数据线根数据线根数为数为b,则片容量为:则片容量为:2aXb = 219;b = 219-a;若若a = 19,b = 1,总和总和 = 19+1 = 20; a = 18,b = 2,总和总和 = 18+2 = 20; a = 17,b = 4,总和总和 = 17+4 = 21; a = 16,b = 8,总和总和 = 16+8 = 24; 由上可看出:由上可看出:片字数越少,片字数越少,片字长越长,引脚数越多。片字长越长,引脚数越多。片字数、片字数、片位数均按片位数均按2的幂变化的幂变化。 结论:结论:如果满足地址线和数如果满足地址线

36、和数据线的总和为最小,这种芯片的引据线的总和为最小,这种芯片的引脚分配方案有脚分配方案有两种两种:地址线:地址线 = 19根根,数据线,数据线 = 1根根;或地址线;或地址线 = 18根根,数据线,数据线 = 2根根。 13. 某某8位位微型机微型机地址码为地址码为18位位,若使用,若使用4KX4位位的的RAM芯片芯片组成模块板结构的存储器,试问:组成模块板结构的存储器,试问: (1)该机所允许的)该机所允许的最大主最大主存空间存空间是多少?是多少? (2)若每个模块板为)若每个模块板为32KX8位位,共需,共需几个几个模块板?模块板? (3)每个模块板内共有)每个模块板内共有几几片片RAM芯

37、片?芯片? (4)共有)共有多少片多少片RAM? (5)CPU如何如何选择选择各模块各模块板?板? 解:解: (1)218 = 256K,则该机所允则该机所允许的最大主存空间是许的最大主存空间是256KX8位位(或(或256KB);); (2)模块板总数模块板总数 = 256KX8 / 32KX8 = 8块块; (3)板内片数)板内片数 = 32KX8位位 / 4KX4位位 = 8X2 = 16片片; (4)总片数)总片数 = 16片片X8 = 128片片; (5)CPU通过通过最高最高3位地址译位地址译码码选板,选板,次高次高3位地址译码位地址译码选片。选片。地址格式分配如下:地址格式分配如

38、下:板地址板地址板地址板地址 片地址片地址片地址片地址 片内地址片内地址片内地址片内地址3 3 123 3 1217 15 14 12 11 0 14. 设设CPU共有共有16根地址线根地址线,8根数据线根数据线,并用,并用-MREQ(低电平有低电平有效)作访存控制信号,效)作访存控制信号,R/-W作读写作读写命令信号(高电平为读,低电评为命令信号(高电平为读,低电评为写)。现有下列存储芯片:写)。现有下列存储芯片:ROM(2KX8位,位,4KX4位,位,8KX8位),位),RAM(1KX4位,位,2KX8位,位,4KX8位),及位),及74138译码器和其他译码器和其他门电路门电路(门电路自

39、定)。试从上述(门电路自定)。试从上述规格中选用合适芯片,画出规格中选用合适芯片,画出CPU和和存储芯片的连接图。要求:存储芯片的连接图。要求: (1)最小最小4K地址地址为为系统系统程序程序区,区,409616383地址范围为地址范围为用户用户程程序区;序区; (2)指出)指出选用选用的存储芯片类的存储芯片类型及数量;型及数量; (3)详细)详细画出画出片选逻辑。片选逻辑。 解:解: (1)地址空间分配图地址空间分配图:4K4K(ROMROM)4K4K(SRAMSRAM)4K4K(SRAMSRAM)4K4K(SRAMSRAM) 0409504095 40968191 40968191 819

40、212287 81921228712288163831228816383 65535 65535Y0Y0Y1Y1Y2Y2Y3Y3A15=1A15=1A15=0A15=0 (2)选片选片:ROM:4KX4位:位:2片片; RAM:4KX8位:位:3片片; (3)CPU和存储器连接逻辑图和存储器连接逻辑图及及片选逻片选逻辑辑:4KX44KX4ROMROM7413874138(3 3:8 8)4KX44KX4ROMROM4KX84KX8RAMRAM4KX84KX8RAMRAM4KX84KX8RAMRAM-CS0 -CS1 -CS2 -CS3-CS0 -CS1 -CS2 -CS3-MREQ-MREQA

41、15A15A14A14A13A13A12A12CBA -Y0-G2A -G2B-G2A -G2BG1G1+5V+5VCPUCPUA110A110R/-WR/-WD30D30D74D74-Y1-Y2-Y3 15. CPU假设同上题,现有假设同上题,现有8片片8KX8位位的的RAM芯片与芯片与CPU相连,相连,试回答:试回答: (1)用)用74138译码器画出译码器画出CPU与存储芯片的与存储芯片的连接图连接图; (2)写出每片)写出每片RAM的的地址范地址范围围; (3)如果运行时发现不论往)如果运行时发现不论往哪片哪片RAM写入数据后,以写入数据后,以A000H为起始地址的存储芯片都有与其为起

42、始地址的存储芯片都有与其相相同同的数据,分析的数据,分析故障原因故障原因。 (4)根据()根据(1)的连接图,)的连接图,若出现地址线若出现地址线A13与与CPU断线断线,并,并搭接搭接到到高电平高电平上,将出现什么上,将出现什么后果后果? 解:解: (1)CPU与存储器芯片连接逻辑图:与存储器芯片连接逻辑图:CPUCPU8KX88KX8SRAMSRAM7413874138(3 3:8 8)R/-WD70A1208KX88KX8SRAMSRAM8KX88KX8SRAMSRAM8KX88KX8SRAMSRAM-G2A-G2A-G2B-G2BA AB BC C-MREQA13A14A15-CS0

43、-CS1 -CS2 -CS7-CS0 -CS1 -CS2 -CS7+5V+5VG1G1 (2)地址空间分配图:)地址空间分配图:8KX8 RAM8KX8 RAM8KX8 RAM8KX8 RAM8KX8 RAM8KX8 RAM8KX8 RAM8KX8 RAMY0Y1Y2Y3Y4Y5Y6Y708191819216383163842457524576327673276840959409604915149152573435734465535 (3)如果运行时发现不论往)如果运行时发现不论往哪片哪片RAM写入数据后,以写入数据后,以A000H为起始地址的存储芯片都有与其为起始地址的存储芯片都有与其相同的

44、数据,则根本的相同的数据,则根本的故障原因故障原因为:该存储芯片的为:该存储芯片的片选输入端片选输入端很很可能可能总是处于低电平总是处于低电平。可能的情。可能的情况有:况有:1)该片的)该片的-CS端与端与-WE端端错连错连或或短路短路;2)该片的)该片的-CS端与端与CPU的的-MREQ端端错连错连或或短路短路;3)该片的)该片的-CS端与端与地线地线错连错连或或短短路路; 在此,假设芯片与译码器本在此,假设芯片与译码器本身都是好的。身都是好的。 (4)如果地址线)如果地址线A13与与CPU断线断线,并,并搭接到高电平搭接到高电平上,上,将会出现将会出现A13恒为恒为“1”的情况。的情况。此

45、时存储器只能寻此时存储器只能寻址址A13=1的地址空间,的地址空间,A13=0的另一半地址空间将的另一半地址空间将永远访问不到永远访问不到。若对。若对A13=0的地址空间进行访问,只能的地址空间进行访问,只能错误地访问到错误地访问到A13=1的对应的对应空间中去。空间中去。 17. 某机字长某机字长16位位,常规的存储空间为,常规的存储空间为64K字字,若想不改用其他高速的存储芯片,而,若想不改用其他高速的存储芯片,而使访存速度提高到使访存速度提高到8倍倍,可采取什么措施?画,可采取什么措施?画图说明。图说明。 解:若想不改用高速存储芯片,而使访存解:若想不改用高速存储芯片,而使访存速度提高到

46、速度提高到8倍,可采取倍,可采取多体交叉存取技术多体交叉存取技术,图示如下:图示如下:0 08 8M0M08K8K1 19 9M1M18K8K2 21010M2M28K8K3 31111M3M38K8K4 41212M4M48K8K5 51313M5M58K8K6 61414M6M68K8K7 71515M7M78K8K存储管理存储管理存储管理存储管理存储总线存储总线存储总线存储总线8体交叉访问时序:体交叉访问时序:启动启动启动启动M0M0:启动启动启动启动M1M1:启动启动启动启动M2M2:启动启动启动启动M3M3:启动启动启动启动M4M4:启动启动启动启动M5M5:启动启动启动启动M6M6

47、:启动启动启动启动M7M7:t t单体存取周期单体存取周期单体存取周期单体存取周期由图可知:每隔由图可知:每隔由图可知:每隔由图可知:每隔1/81/8个存取周期就可在存储总线上获得一个数据。个存取周期就可在存储总线上获得一个数据。个存取周期就可在存储总线上获得一个数据。个存取周期就可在存储总线上获得一个数据。返回返回返回返回目录目录目录目录 23. 画出画出RZ、NRZ、NRZ1、PE、FM写入写入数字串数字串1011001的的写入电流波形图写入电流波形图。 解:解:RZRZ:NRZNRZ:NRZ1NRZ1:PEPE:FMFM:1 0 1 1 0 0 11 0 1 1 0 0 1ttttt 2

48、4. 以写入以写入1001 0110为例,比较调频制为例,比较调频制和改进调频制的写电流波形图。和改进调频制的写电流波形图。 解:写电流波形图如下:解:写电流波形图如下:FM:FM:MFM:MFM:MFM:MFM:1 0 0 1 0 1 1 01 0 0 1 0 1 1 0tt1 0 0 1 0 1 1 01 0 0 1 0 1 1 0频率提高一倍后的频率提高一倍后的频率提高一倍后的频率提高一倍后的MFMMFM制。制。制。制。t 比较:比较: 1)FM和和MFM写电流在写电流在位周位周期中心处期中心处的变化规则的变化规则相同相同; 2)MFM制除连续一串制除连续一串“0”时时两个两个0周期交界

49、处周期交界处电流电流仍变化仍变化外,外,基本取消了位周期起始处的电流基本取消了位周期起始处的电流变化;变化; 3)FM制记录一位二进制代制记录一位二进制代码码最多两次最多两次磁翻转,磁翻转,MFM制记录制记录一位二进制代码一位二进制代码最多一次最多一次磁翻转,磁翻转,因此因此MFM制的记录密度可制的记录密度可提高一提高一倍倍。上图中示出了在。上图中示出了在MFM制时制时位位周期时间缩短一倍周期时间缩短一倍的情况。由图的情况。由图可知,当可知,当MFM制记录密度制记录密度提高一提高一倍倍时,其写电流频率与时,其写电流频率与FM制的写制的写电流频率电流频率相当相当; 4)由于)由于MFM制并不是制

50、并不是每个位周期都有电流变化,故每个位周期都有电流变化,故自同步脉冲的分离需依据自同步脉冲的分离需依据相邻相邻两个位周期的读出信息两个位周期的读出信息产生,产生,自同步技术比自同步技术比FM制制复杂复杂得多。得多。 25. 画出画出调相制调相制记录记录01100010的驱动的驱动电流电流、记录记录磁通磁通、感应、感应电势电势、同步同步脉冲及脉冲及读出读出代码等代码等几种波形。几种波形。 解:解:I I: :e e:T T:D D:0 1 1 0 0 0 1 00 1 1 0 0 0 1 0ttttt 26. 磁盘组有磁盘组有六片六片磁盘,每片磁盘,每片有有两个两个记录面,存储区域记录面,存储区

51、域内径内径22厘厘米米,外径外径33厘米厘米,道密度道密度为为40道道/厘米厘米,内层密度内层密度为为400位位/厘米厘米,转转速速2400转转/分分,问:,问: (1)共有多少)共有多少存储面存储面可用?可用? (2)共有多少)共有多少柱面柱面? (3)盘组)盘组总存储容量总存储容量是多少是多少? (4)数据传输率数据传输率是多少?是多少? 解:解: (1)若)若去掉两个保护面去掉两个保护面,则,则共有:共有: 6 X 2 - 2 = 10个存储面可用个存储面可用; (2)有效存储区域)有效存储区域 =(33-22)/ 2 = 5.5cm 柱面数柱面数 = 40道道/cm X 5.5= 22

52、0道道 (3)内层道周长)内层道周长=22 = 69.08cm 道容量道容量=400位位/cmX69.08cm = 3454B 面容量面容量=3454B X 220道道 = 759,880B 盘组盘组总容量总容量 = 759,880B X 10面面 = 7,598,800B(4)转速转速 = 2400转转 / 60秒秒 = 40转转/秒秒 数据传输率数据传输率 = 3454B X 40转转/秒秒 = 138,160 B/S 27. 某磁盘存储器某磁盘存储器转速转速为为3000转转/分分,共有,共有4个记录盘面个记录盘面,每毫米每毫米5道道,每道记录信息,每道记录信息12 288字节字节,最小磁

53、道直径为,最小磁道直径为230mm,共有共有275道道,求:,求: (1)磁盘存储器的)磁盘存储器的存储容量存储容量; (2)最高位密度最高位密度(最小磁道(最小磁道的位密度)和的位密度)和最低位密度最低位密度; (3)磁盘)磁盘数据传输率数据传输率; (4)平均等待时间平均等待时间。解:解: (1)存储容量存储容量 = 275道道X12 288B/道道X4面面 = 13 516 800B (2)最高位密度最高位密度 = 12 288B/230 = 17B/mm = 136位位/mm(向下取向下取整)整) 最大磁道直径最大磁道直径 =230mm+275道道/5道道 X2 = 230mm + 1

54、10mm = 340mm 最低位密度最低位密度 = 12 288B / 340 = 11B/mm = 92位位 / mm (向下向下取整)取整) (3)磁盘磁盘数据传输率数据传输率 = 12 288B X 3000转转/分分 =12 288B X 50转转/秒秒=614 400B/S (4)平均等待时间平均等待时间 = 1/50 / 2 = 10ms返回目录返回目录返回目录返回目录输入输出系统输入输出系统第第 五章五章 1. I/O有哪些编址方式?各有有哪些编址方式?各有何特点?何特点? 解:常用的解:常用的I/O编址方式有两编址方式有两种:种: I/O与内存统一编址和与内存统一编址和I/O独

55、独立编址立编址; 特点特点: I/O与内存统一编址与内存统一编址方式的方式的I/O地址采用地址采用与主存单元地与主存单元地址完全一样址完全一样的格式,的格式,I/O设备和主设备和主存占用存占用同一个同一个地址空间,地址空间,CPU可可像访问主存一样像访问主存一样访问访问I/O设备,设备,不不需要安排专门的需要安排专门的I/O指令指令。 I/O独立编址方式时机器为独立编址方式时机器为I/O设备专门安排一套完全不同于设备专门安排一套完全不同于主存地址格式的地址编码,此时主存地址格式的地址编码,此时I/O地址与主存地址是地址与主存地址是两个独立的两个独立的空间空间,CPU需要通过需要通过专门的专门的

56、I/O指指令令来访问来访问I/O地址空间。地址空间。 6. 字符显示器的接口电路字符显示器的接口电路中配有中配有缓冲存储器缓冲存储器和和只读存储只读存储器器,各有何作用?,各有何作用? 解:显示缓冲存储器的作解:显示缓冲存储器的作用是支持屏幕扫描时的反复用是支持屏幕扫描时的反复刷刷新新;只读存储器作为;只读存储器作为字符发生字符发生器器使用,他起着将字符的使用,他起着将字符的ASCII码转换为字形点阵码转换为字形点阵信息的作用。信息的作用。 8. 某计算机的某计算机的I/O设备采用设备采用异步串行传送方式传送字符信息。异步串行传送方式传送字符信息。字符信息的格式为字符信息的格式为一位起始位、一

57、位起始位、七位数据位、一位校验位和一位七位数据位、一位校验位和一位停止位。停止位。若要求每秒钟传送若要求每秒钟传送480个字符个字符,那么该设备的数据传送,那么该设备的数据传送速率为多少?速率为多少? 解:解:48010=4800位位/秒秒=4800波特;波特; 波特波特是数据传送速率是数据传送速率波特率的波特率的单位单位。 10. 什么是什么是I/O接口接口?为什么为什么要要设置设置I/O接口?接口?I/O接口如何接口如何分分类类? 解:解: I/O接口接口一般指一般指CPU和和I/O设备间的设备间的连接部件连接部件; I/O接口接口分类方法很多,主要有:分类方法很多,主要有: 按按数据传送

58、方式数据传送方式分有分有并行并行接接口和口和 串行串行接口接口两种两种; 按按数据传送的控制方式数据传送的控制方式分有分有程序控制程序控制接口、接口、程序中断程序中断接口、接口、DMA接口三种。接口三种。 12. 结合结合程序查询方式的接口程序查询方式的接口电路,电路,说明其工作过程。说明其工作过程。 解:解:程序查询接口工作过程程序查询接口工作过程如下如下(以输入为例):(以输入为例): 1)CPU发发I/O地址地址地址总线地址总线接接口口设备选择器译码设备选择器译码选中,发选中,发SEL信信号号开命令接收门;开命令接收门; 2)CPU发发启动启动命令命令 D置置0,B置置1 接口向设备发启

59、动命令接口向设备发启动命令设备开始设备开始工作;工作; 3)CPU等待等待,输入设备读出数据,输入设备读出数据 DBR; 4)外设工作外设工作完成完成,完成信号,完成信号接接口口 B置置0,D置置1; 5)准备)准备就绪就绪信号信号控制总线控制总线 CPU; 6)输入输入:CPU通过通过输入指令输入指令(IN)将)将DBR中的数据取走;中的数据取走; 若为若为输出输出,除数据传送方向相反,除数据传送方向相反以外,其他操作与输入类似。工作过程以外,其他操作与输入类似。工作过程如下:如下: 1)CPU发发I/O地址地址地址总线地址总线接口接口设备选择器译码设备选择器译码选中,发选中,发SEL信号信

60、号开命令接收门;开命令接收门; 2)输出输出: CPU通过通过输出指令输出指令(OUT)将)将数据放入接口数据放入接口DBR中;中; 3)CPU发发启动启动命令命令 D置置0,B置置1 接口向设备发启动命令接口向设备发启动命令设备开设备开始工作;始工作; 4)CPU等待等待,输出设备将数据,输出设备将数据从从 DBR取走;取走; 5)外设工作)外设工作完成完成,完成信号,完成信号接接口口 B置置0,D置置1; 6)准备准备就绪就绪信号信号控制总线控制总线 CPU,CPU可通过指令可通过指令再次再次向接口向接口DBR输出数据,进行第二次传送。输出数据,进行第二次传送。 13. 说明说明中断向量地

61、址中断向量地址和和入入口地址口地址的区别和联系。的区别和联系。 解:解: 中断向量地址和入口地址的中断向量地址和入口地址的区别区别: 向量地址向量地址是硬件电路(向量是硬件电路(向量编码器)产生的中断源的内存地编码器)产生的中断源的内存地址编号,址编号,中断入口地址中断入口地址是中断服是中断服务程序首址。务程序首址。 中断向量地址和入口地址的中断向量地址和入口地址的联系联系: 中断向量地址可理解为中断中断向量地址可理解为中断服务程序服务程序入口地址指示器入口地址指示器(入口(入口地址的地址),通过它访存可获地址的地址),通过它访存可获得中断服务程序入口地址。得中断服务程序入口地址。 14. 在

62、什么条件下,在什么条件下,I/O设备设备可以向可以向CPU提出提出中断请求中断请求? 解:解:I/O设备向设备向CPU提出中提出中断请求的断请求的条件条件是:是:I/O接口中的设接口中的设备工作完成状态为备工作完成状态为1(D=1),),中中断屏蔽码为断屏蔽码为0 (MASK=0),且),且CPU查询中断时,中断请求触发查询中断时,中断请求触发器状态为器状态为1(INTR=1)。)。 15. 什么是什么是中断允许触发器中断允许触发器?它有何作用?它有何作用? 解:中断允许触发器是解:中断允许触发器是CPU中断系统中的一个部件,他起着中断系统中的一个部件,他起着开关中断的作用(即中断开关中断的作

63、用(即中断总开关总开关,则中断屏蔽触发器可视为中断的则中断屏蔽触发器可视为中断的分开关分开关)。)。 16. 在什么在什么条件条件和什么和什么时间时间,CPU可以可以响应响应I/O的中断请求?的中断请求? 解:解:CPU响应响应I/O中断请求的中断请求的条件和时间条件和时间是:当中断允许状态为是:当中断允许状态为1(EINT=1),),且且至少有一个中断至少有一个中断请求请求被查到,则在被查到,则在一条指令执行完一条指令执行完时,响应中断。时,响应中断。 17. 某系统对输入数据进行取某系统对输入数据进行取样处理,每抽取一个输入数据,样处理,每抽取一个输入数据,CPU就要中断处理一次,将取样的

64、就要中断处理一次,将取样的数据存至存储器的缓冲区中,该中数据存至存储器的缓冲区中,该中断处理需断处理需P秒秒。此外,缓冲区内每。此外,缓冲区内每存储存储N个个数据,主程序就要将其取数据,主程序就要将其取出进行处理,这个处理需出进行处理,这个处理需Q秒秒。试。试问该系统可以问该系统可以跟踪到每秒多少次中跟踪到每秒多少次中断请求?断请求? 解:这是一道求解:这是一道求中断饱和度中断饱和度的题,要的题,要注意注意主程序对数据的处主程序对数据的处理不是中断处理,因此理不是中断处理,因此Q秒不能秒不能算在中断次数内。算在中断次数内。 N个数据所需的处理时间个数据所需的处理时间=PN+Q秒秒 平均每个数据

65、所需处理时间平均每个数据所需处理时间= (PN+Q) /N秒;秒; 求倒数得:求倒数得: 该系统该系统跟踪到的每秒中断请求跟踪到的每秒中断请求数数=N/(PN+Q)次。次。 19. 在程序中断方式中,磁盘在程序中断方式中,磁盘申请中断的优先权高于打印机。当申请中断的优先权高于打印机。当打印机正在进行打印时,磁盘申请打印机正在进行打印时,磁盘申请中断请求。试问中断请求。试问是否要将打印机输是否要将打印机输出停下来出停下来,等磁盘操作结束后,打,等磁盘操作结束后,打印机输出才能继续进行?为什么?印机输出才能继续进行?为什么? 解:这是一道解:这是一道多重中断多重中断的题,的题,由于磁盘中断的优先权

66、高于打印机,由于磁盘中断的优先权高于打印机,因此因此应将打印机输出停下来应将打印机输出停下来,等磁,等磁盘操作结束后,打印机输出才能继盘操作结束后,打印机输出才能继续进行。因为打印机的速度比磁盘续进行。因为打印机的速度比磁盘输入输出的速度慢,并且暂停打印输入输出的速度慢,并且暂停打印不会造成数据丢失。不会造成数据丢失。 22. CPU对对DMA请求和中断请求和中断请求的响应时间请求的响应时间是否一样是否一样?为什?为什么?么? 解:解: CPU对对DMA请求和中请求和中断请求的响应时间断请求的响应时间不一样不一样,因为,因为两种方式的交换速度相差很大,两种方式的交换速度相差很大,因此因此CPU

67、必须以更短的时间间隔必须以更短的时间间隔查询并响应查询并响应DMA请求(请求(一个存取一个存取周期末周期末)。)。 24. DMA的工作方式中,的工作方式中,CPU暂停方式和周期挪用方式的暂停方式和周期挪用方式的数据传送流程数据传送流程有何不同?画图说有何不同?画图说明。明。 解:两种解:两种DMA方式的工作流方式的工作流程见下页,其程见下页,其主要区别在于传送主要区别在于传送阶段,现行程序是否完全停止访阶段,现行程序是否完全停止访存。存。停止停止CPU访存访存方式的方式的DMA工作流程如下:工作流程如下:现行程序现行程序 CPU DMAC I/ODMADMA预处理:预处理:预处理:预处理:

68、向向向向DMACDMAC送送送送MMMM缓冲区缓冲区缓冲区缓冲区 首址;首址;首址;首址;I/OI/O设备设备设备设备 地址;地址;地址;地址;交换个数;交换个数;交换个数;交换个数;启动启动启动启动I/OI/O现行程序现行程序现行程序现行程序开始工作开始工作开始工作开始工作启动启动启动启动I/OI/O准备准备准备准备就绪就绪就绪就绪DMADMA请求请求请求请求I/OI/O数据送数据送数据送数据送BRBR或或或或(BR)(BR)送送送送I/OI/O总线请求总线请求总线请求总线请求现行程序现行程序现行程序现行程序A AA A数据传送:数据传送:数据传送:数据传送:响应,响应,响应,响应,停止停止

69、停止停止CPUCPU访存访存访存访存准备下准备下准备下准备下个数据个数据个数据个数据(AR)(AR)送送送送MM(MAR)MM(MAR);(AR)+1(AR)+1;R/WR/W(BR)(BR)送送送送MDRMDR;WCWC减减减减1 1;就绪就绪就绪就绪DMADMA请求请求请求请求现现现现行行行行程程程程序序序序等等等等待待待待B BI/OI/O数据送数据送数据送数据送BRBR或或或或(BR)(BR)送送送送I/OI/OC CD D让出让出总线总线 CPU DMAC I/O B C D准备下个数据准备下个数据准备下个数据准备下个数据(AR)(AR)送送送送(MAR)(MAR);(AR)+1(A

70、R)+1;R/WR/W(BR)(BR)送送送送MDRMDR;WCWC减减减减1 1;中断请求中断请求中断请求中断请求现行程序现行程序现行程序现行程序响应中断响应中断响应中断响应中断后处理:后处理:后处理:后处理:中断服务程序:中断服务程序:中断服务程序:中断服务程序:校验、错误检测、停止外设校验、错误检测、停止外设校验、错误检测、停止外设校验、错误检测、停止外设或再启动及初始化。或再启动及初始化。或再启动及初始化。或再启动及初始化。现行程序现行程序现行程序现行程序I/OI/O停止停止停止停止WC=0WC=0现现现现行行行行程程程程序序序序等等等等待待待待周期窃取方式的周期窃取方式的DMA工作流

71、程如下:工作流程如下:现行程序现行程序 CPU DMAC I/ODMADMA预处理:预处理:预处理:预处理: 向向向向DMACDMAC送送送送MMMM缓冲区缓冲区缓冲区缓冲区 首址;首址;首址;首址;I/OI/O设备设备设备设备 地址;地址;地址;地址;交换个数;交换个数;交换个数;交换个数;启动启动启动启动I/OI/O现行程序现行程序现行程序现行程序开始工作开始工作开始工作开始工作启动启动启动启动I/OI/O准备准备准备准备就绪就绪就绪就绪DMADMA请求请求请求请求I/OI/O数据送数据送数据送数据送BRBR或或或或(BR)(BR)送送送送I/OI/O总线请求总线请求总线请求总线请求现行程

72、序现行程序现行程序现行程序A AA A数据传送:数据传送:数据传送:数据传送: 响应,响应,响应,响应,让出一个让出一个让出一个让出一个MMMM周期周期周期周期准备下准备下准备下准备下个数据个数据个数据个数据(AR)(AR)送送送送MM(MAR)MM(MAR);(AR)+1(AR)+1;R/WR/W(BR)(BR)送送送送MDRMDR;WCWC减减减减1 1;就绪就绪就绪就绪DMADMA请求请求请求请求现行程序现行程序现行程序现行程序总线请求总线请求总线请求总线请求B BI/OI/O数据送数据送数据送数据送BRBR或或或或(BR)(BR)送送送送I/OI/OC CD D CPU DMAC I/

73、O B C D数据传送:数据传送:数据传送:数据传送: 响应,响应,响应,响应,让出一个让出一个让出一个让出一个MMMM周期周期周期周期准备下个数据准备下个数据准备下个数据准备下个数据(AR)(AR)送送送送(MAR)(MAR);(AR)+1(AR)+1;R/WR/W(BR)(BR)送送送送MDRMDR;WCWC减减减减1 1;中断请求中断请求中断请求中断请求现行程序现行程序现行程序现行程序响应中断响应中断响应中断响应中断后处理:后处理:后处理:后处理:中断服务程序:中断服务程序:中断服务程序:中断服务程序:校验、错误检测、停止外设校验、错误检测、停止外设校验、错误检测、停止外设校验、错误检测

74、、停止外设或再启动及初始化。或再启动及初始化。或再启动及初始化。或再启动及初始化。现行程序现行程序现行程序现行程序I/OI/O停止停止停止停止WC=0WC=0 25. 假设某设备向假设某设备向CPU传送传送信息的最高频率是信息的最高频率是40K次次/秒秒,而,而相应的中断处理程序其执行时间相应的中断处理程序其执行时间为为40 s,试问该外设试问该外设是否可用程是否可用程序中断序中断方式与主机交换信息,为方式与主机交换信息,为什么?什么? 解:该设备向解:该设备向CPU传送信息传送信息的时间间隔的时间间隔 =1/40K=0.025103=25 s 40 s 则:该外设则:该外设不能用程序中断不能

75、用程序中断方式方式与主机交换信息,因为其中与主机交换信息,因为其中断处理程序的执行速度比该外设断处理程序的执行速度比该外设的交换速度慢。的交换速度慢。 26. 设磁盘存储器转速为设磁盘存储器转速为3000转转/分分,分,分8个扇区个扇区,每扇,每扇区存储区存储1K字节字节,主存与磁盘存,主存与磁盘存储器数据传送的宽度为储器数据传送的宽度为16位位(即每次传送(即每次传送16位)。假设一位)。假设一条指令最长执行时间是条指令最长执行时间是25 s,是否可采用是否可采用一条指令执行结束一条指令执行结束时响应时响应DMA请求请求的方案,为什的方案,为什么?若不行,应采取什么方案么?若不行,应采取什么

76、方案? 解:先算出磁盘传送速度,解:先算出磁盘传送速度,然后和指令执行速度进行比较得然后和指令执行速度进行比较得出结论。出结论。道容量道容量=1KB8 16 =1K 8 8 16 =1K 4=4K字字数传率数传率=4K字字3000转转/分分 =4K字字50转转/秒秒 =200K字字/秒秒一个字的传送时间一个字的传送时间=1/200K字字/秒秒=5 s 5 s 1/2; (2)X 1/8; (3)1/4 X 1/16 解:解: (1)若要)若要X 1/2,只只要要a1=1,a2a6不全为不全为0即可(即可(a2 or a3 or a4 or a5 or a6 = 1);); (2)若要若要X 1

77、/8,只要只要a1a3不全为不全为0即可(即可(a1 or a2 or a3 =1),), a4a6可任取可任取0或或1;(3)若要若要1/4 X 1/16,只要只要a1=0,a2可任取可任取0或或1; 当当a2=0时,若时,若a3=0,则必须则必须a4=1,且且a5、a6不全为不全为0(a5 or a6=1;若;若a3=1,则,则a4a6可任取可任取0或或1; 当当a2=1时,时, a3a6可任取可任取0或或1。 3. 设设x为整数,为整数,x补补=1,x1x2x3x4x5,若要求若要求 x -16,试问试问 x1x5 应取何值?应取何值? 解:若要解:若要x -16,需需 x1=0,x2x

78、5 任意。(注:任意。(注:负数绝对值大负数绝对值大的反而小的反而小。)。) 4. 设机器数字长为设机器数字长为8位(含位(含1位符号位在位符号位在内),写出对应下列各真值的原码、补码和内),写出对应下列各真值的原码、补码和反码。反码。 -13/64,29/128,100,-87 解:真值与不同机器码对应关系如下:解:真值与不同机器码对应关系如下: 真真真真 值值值值十进制十进制十进制十进制 二进制二进制二进制二进制 原原原原 码码码码 反反反反 码码码码 补补补补 码码码码-13/64 -0.00 1101 1.001 1010 1.110 0101 1.110 011029/128 0.0

79、01 1101 0.001 1101 0.001 1101 0.001 1101 100 110 0100 0,110 0100 0,110 0100 0,110 0100 -87 -101 0111 1,101 0111 1,010 1000 1,010 1001 5. 已知已知x补补,求,求x原原和和x。x1补补=1. 1100; x2补补=1. 1001; x3补补=0. 1110; x4补补=1. 0000; x5补补=1,0101; x6补补=1,1100; x7补补=0,0111; x8补补=1,0000; 解:解:x补补与与x原原、x的对应关系如下:的对应关系如下: xx补补补补

80、 xx原原原原 x x(二进制)二进制)二进制)二进制) x x(十进制)十进制)十进制)十进制) 1.1100 1.0100 -0.0100 -1/41.1100 1.0100 -0.0100 -1/4 1.1001 1.0111 -0.0111 -7/16 1.1001 1.0111 -0.0111 -7/16 0.1110 0.1110 0.11100.1110 +0.1110 +7/8 +0.1110 +7/8 1.0000 1.0000 无无无无 -1.0000 -1-1.0000 -1 1 1,0101 10101 1,1011 -1011 -111011 -1011 -11 1

81、1,1100 11100 1,0100 -0100 -40100 -0100 -4 0 0,0111 00111 0,0111 +0111 +70111 +0111 +7 1 1,0000 0000 无无无无 -10000 -16-10000 -16 6. 设机器数字长为设机器数字长为8位(含位(含1位符号位在内),分位符号位在内),分整数整数和和小小数数两种情况讨论真值两种情况讨论真值x为何值时,为何值时,x补补=x原原成立。成立。 解:解: 当当x为为小数小数时,若时,若x 0,则则 x补补=x原原成立;成立; 若若x 0,则当则当x= -1/2时,时, x补补=x原原成立。成立。 当当x

82、为为整数整数时,若时,若x 0,则则 x补补=x原原成立;成立; 若若x 0时成时成立。当立。当xy补补,是否,是否有有xy? 解:若解:若x补补y补补,不一定不一定有有xy。 x补补 y补补时时 x y的的结论只在结论只在 x 0、y 0,及及 x0、y0时成立。时成立。当当x0时,时,有有x y,但由于负数补码的符号但由于负数补码的符号位为位为1,则,则x补补y补补。同样,当。同样,当x0时,有时,有x y补补。 9. 当十六进制数当十六进制数9B和和FF分别表示为分别表示为原码原码、补码补码、反码反码、移码移码和和无符号数无符号数时,所对应的十时,所对应的十进制数各为多少(设机器数采用一

83、位符号位)进制数各为多少(设机器数采用一位符号位)? 解:真值和机器数的对应关系如下:解:真值和机器数的对应关系如下: 十六十六 进制进制 真值真值 无符无符 号数号数 原码原码 反码反码补码补码移码移码 9BH二进制二进制十进制十进制1001 1011 155-11 011 -27-1100100 -100-1100101 -101+11011 +27 FFH二进制二进制十进制十进制1111 1111 255-1111111 -127-0000000 -0-0000001 -1+1111111 +127 10. 在整数定点机中,设机器数采用在整数定点机中,设机器数采用一位一位符号位符号位,写

84、出,写出0的的原码原码、补码补码、反码反码和和移码移码,得出什么结论?得出什么结论? 解:解:0的机器数形式如下:的机器数形式如下: 真值真值 原码原码 补码补码 反码反码 移码移码 +00,0000,0000,0001,000 -01,0000,0001,1111,000 11. 11. 已知机器数字长为已知机器数字长为已知机器数字长为已知机器数字长为4 4位位位位(其中(其中(其中(其中1 1位为符号位位为符号位位为符号位位为符号位),),),),写出整数定点机和小树定点机中写出整数定点机和小树定点机中写出整数定点机和小树定点机中写出整数定点机和小树定点机中原码原码原码原码、补码补码补码补

85、码和和和和反码反码反码反码的全部形式,并注明其对应的十进制真值。的全部形式,并注明其对应的十进制真值。的全部形式,并注明其对应的十进制真值。的全部形式,并注明其对应的十进制真值。解:机器数与对应的真值形式如解:机器数与对应的真值形式如下:下: 真值真值(二进制)(二进制) 真值真值(十进制)(十进制) 原码原码 反码反码 补码补码 整整 数数 +111 +110 +101 +100 +011 +010 +001 +000 +7 +6 +5 +4 +3 +2 +1 +0 0,111 0,110 0,101 0,100 0,011 0,010 0,001 0,000 同同 原原 码码 同同 原原

86、码码续表续表1: 真值真值(二进制)(二进制) 真值真值(十进制)(十进制) 原码原码 反码反码 补码补码 整整 数数 -1000 -111 -110 -101 -100 -011 -010 -001 -000 -8 -7 -6 -5 -4 -3 -2 -1 -0 无无1,1111,1101,1011,1001,0111,0101,0011,000 无无1,000 1,001 1,010 1,011 1,100 1,101 1,110 1,1111,000 1,001 1,010 1,011 1,100 1,101 1,110 1,1110,000续表续表2: 真值真值(二进制)(二进制) 真

87、值真值(十进制)(十进制) 原码原码 反码反码 补码补码 小小 数数 +0.111 +0.110 +0.101 +0.100 +0.011 +0.010 +0.001 +0.000 +7/8 +3/4 +5/8 +1/2 +3/8 +1/4 +1/8 +0 0.111 0.110 0.101 0.100 0.011 0.010 0.001 0.000 同同 原原 码码 同同 原原 码码续表续表3: 真值真值(二进制)(二进制) 真值真值(十进制)(十进制) 原码原码 反码反码 补码补码 小小 数数 -1.000 -0.111 -0.110 -0.101 -0.100 -0.011 -0.010

88、 -0.001 -0.000 -1 -7/8 -3/4 -5/8 -1/2 -3/8 -1/4 -1/8 -0 无无 1.111 1.110 1.101 1.100 1.011 1.010 1.001 1.000 无无 1.000 1.001 1.010 1.011 1.100 1.101 1.110 1.111 1.000 1.001 1.010 1.011 1.100 1.101 1.110 1.111 0.000 12. 设浮点数格式为:设浮点数格式为:阶符阶符1位、阶码位、阶码4位、数符位、数符1位、尾数位、尾数10位。位。写出写出51/128、27/1024、7.375、-86.5所

89、对应的机器数。所对应的机器数。要求要求 (1)阶码和尾数均为原码;)阶码和尾数均为原码; (2)阶码和尾数均为补码;)阶码和尾数均为补码; (3)阶码为移码,尾数为)阶码为移码,尾数为补码。补码。 解:据题意画出该浮点数的解:据题意画出该浮点数的格式:格式: 1 4 1 10阶符阶符阶符阶符 阶码阶码阶码阶码 数符数符数符数符 尾数尾数尾数尾数 将十进制数转换为二进制:将十进制数转换为二进制: x1=51/128=(0.011 001 1)2 =2-1 (0.110 011)2 x2= -27/1024=(-0.000 001 101 1)2 =2-5 (-0.110 11)2 x3=7.37

90、5=(111.011)2 =23 (0.111 011)2 x4= -86.5=(-1 010 110.1)2 =27 (-0.101 011 01)2 则以上各数的浮点规格化数则以上各数的浮点规格化数为:为:(1)x1浮浮=1,0001;0.110 011 000 0(2)x1浮浮=1,1111;0.110 011 000 0(3)x1浮浮=0,1111;0.110 011 000 0(1)x2浮浮=1,0101;1.110 110 000 0(2)x2浮浮=1,1011;1.001 010 000 0(3)x2浮浮=0,1011;1.001 010 000 0(1)x3浮浮=0,0011;

91、0.111 011 000 0(2)x3浮浮=0,0011;0.111 011 000 0(3)x3浮浮=1,0011;0.111 011 000 0(1)x4浮浮=0,0111;1.101 011 010 0(2)x4浮浮=0,0111;1.010 100 110 0(3)x4浮浮=1,0111;1.010 100 110 0注:以上浮点数也可采用如下格注:以上浮点数也可采用如下格式:式: 1 1 4 10数符数符数符数符 阶符阶符阶符阶符 阶码阶码阶码阶码 尾数尾数尾数尾数 此时只要将上述答案中的数符位移此时只要将上述答案中的数符位移此时只要将上述答案中的数符位移此时只要将上述答案中的数符

92、位移到最前面即可。到最前面即可。到最前面即可。到最前面即可。 13. 浮点数格式同上题,当浮点数格式同上题,当阶码基值分别取阶码基值分别取2和和16时,时, (1)说明)说明2和和16在浮点数在浮点数中如何表示。中如何表示。 (2)基值不同基值不同对浮点数什对浮点数什么有影响?么有影响? (3)当阶码和尾数均用补)当阶码和尾数均用补码表示,且尾数采用规格化形式,码表示,且尾数采用规格化形式,给出两种情况下所能表示的给出两种情况下所能表示的最大最大正数正数和和非零最小正数非零最小正数真值。真值。 解:(解:(1)阶码基值不论取)阶码基值不论取何值,在浮点数中均为何值,在浮点数中均为隐含隐含表示,

93、表示,即:即:2和和16不出现在浮点格式中,不出现在浮点格式中,仅为人为的仅为人为的约定约定。 (2)当基值不同时,对数的表示范围)当基值不同时,对数的表示范围和精度都有影响。即:在浮点格式不变的情和精度都有影响。即:在浮点格式不变的情况下况下,基越大,可表示的浮点数范围越大,基越大,可表示的浮点数范围越大,但精度越下降。但精度越下降。 (3)r=2时,时,最大正数最大正数的浮点格式为:的浮点格式为: 0,1111;0.111 111 111 1 其真值为:其真值为:N+max=215(1-2-10) 非零最小规格化正数非零最小规格化正数浮点格式为:浮点格式为: 1,0000;0.100 00

94、0 000 0 其真值为:其真值为:N+min=2-162-1=2-17 r=16时,时,最大正数最大正数的浮点格式为:的浮点格式为: 0,1111;0.1111 1111 11 其真值为:其真值为:N+max=1615(1-2-10) 非零最小规格化正数非零最小规格化正数浮点格式为:浮点格式为: 1,0000;0.0001 0000 00 其真值为:其真值为:N+min=16-1616-1=16-17 14. 设浮点数字长为设浮点数字长为32位位,欲表示,欲表示6万万间的十进制数,在保证数的最大精度条件下,间的十进制数,在保证数的最大精度条件下,除阶符、数符各取一位外,阶码和尾数各取除阶符、

95、数符各取一位外,阶码和尾数各取几位?按这样分配,该浮点数溢出的条件是几位?按这样分配,该浮点数溢出的条件是什么?什么? 解:若要保证数的最大精度,应取解:若要保证数的最大精度,应取阶的阶的基基=2。 若要表示若要表示6万间的十进制数,由于万间的十进制数,由于32768(215) 6万万 65536(216),则:阶码除阶),则:阶码除阶符外还应取符外还应取16位位(向上取(向上取2的幂)。的幂)。 故:尾数位数故:尾数位数=32-1-1-16=14位位 按此格式,该浮点数上溢的条件为:按此格式,该浮点数上溢的条件为:阶阶码码 216(65536) 该浮点数格式如下:该浮点数格式如下: 1 16

96、 1 14阶符阶符 阶阶 值值数符数符 尾尾 数数 15. 什么是什么是机器零机器零?若要求全?若要求全0表示机器零,浮点数的阶码和尾表示机器零,浮点数的阶码和尾数应采取什么机器数形式?数应采取什么机器数形式? 解:机器零指机器数所表示解:机器零指机器数所表示的零的形式,它与真值零的的零的形式,它与真值零的区别区别是:机器零在数轴上表示为是:机器零在数轴上表示为“0”点及其附近的一段点及其附近的一段区域,即在计区域,即在计算机中小到机器数的精度达不到算机中小到机器数的精度达不到的数均视为的数均视为“机器零机器零”,而真零,而真零对应数轴上的一点(对应数轴上的一点(0点点)。若要)。若要求用求用

97、“全全0”表示浮点机器零,则表示浮点机器零,则浮点数的阶码应用移码、尾数用浮点数的阶码应用移码、尾数用补码表示(此时阶码为最小阶、补码表示(此时阶码为最小阶、尾数为零,而移码的最小码值正尾数为零,而移码的最小码值正好为好为“0”,补码的零的形式也为,补码的零的形式也为“0”,拼起来正好为,拼起来正好为一串一串0的形的形式)。式)。 16. 设机器数字长为设机器数字长为16位位,写,写出下列各种情况下它能表示的数的出下列各种情况下它能表示的数的范围范围。设机器数采用一位符号位,。设机器数采用一位符号位,答案均用十进制表示。答案均用十进制表示。 (1)无符号数无符号数; (2)原码表示的)原码表示

98、的定点小数定点小数; (3)补码补码表示的定点小数;表示的定点小数; (4)补码表示的)补码表示的定点整数定点整数; (5)原码原码表示的定点整数;表示的定点整数; (6)浮点数的格式为:阶符)浮点数的格式为:阶符1位、阶码位、阶码5位、数符位、数符1位、尾数位、尾数9位位(共(共16位)。分别写出其位)。分别写出其正数和负正数和负数数的表示范围;的表示范围; (7)浮点数格式同()浮点数格式同(6),机),机器数采用补码规格化形式,分别写器数采用补码规格化形式,分别写出其对应的正数和负数的出其对应的正数和负数的真值范围真值范围。 解:各种表示方法数据范围解:各种表示方法数据范围如下:(如下:

99、(1)无符号整数:)无符号整数:0 216 - 1, 即:即:0 65535;(2)原码定点小数:)原码定点小数: 1 - 2-15 -(1 - 2-15), 即:即:0.99997 -0.99997;(3)补码定点小数:)补码定点小数:1 - 2-15 - 1 , 即:即:0.99997 -1;(4)补码定点整数:)补码定点整数:215 - 1 -215, 即:即:32767 -32768;(5)原码定点整数:)原码定点整数: 215 - 1 -(215 - 1), 即:即:32767 -32767; (6)据题意画出该浮点数)据题意画出该浮点数格式:格式: 1 5 1 9阶符阶符阶符阶符

100、阶码阶码阶码阶码 数符数符数符数符 尾数尾数尾数尾数 由于题意中未指定该浮点数所采用由于题意中未指定该浮点数所采用由于题意中未指定该浮点数所采用由于题意中未指定该浮点数所采用的码制,则不同的假设前提会导致不同的码制,则不同的假设前提会导致不同的码制,则不同的假设前提会导致不同的码制,则不同的假设前提会导致不同的答案,示意如下:的答案,示意如下:的答案,示意如下:的答案,示意如下: 1 1)当采用)当采用)当采用)当采用阶原尾原非规格化数阶原尾原非规格化数阶原尾原非规格化数阶原尾原非规格化数时,时,时,时,最大正数最大正数最大正数最大正数=0=0,11 11111 111;0.111 111 0

101、.111 111 111111最小正数最小正数最小正数最小正数=1=1,11 11111 111;0.000 000 0010.000 000 001 则正数表示范围为:则正数表示范围为:则正数表示范围为:则正数表示范围为: 2 23131 (1-21-2-9-9)22-31-31 2 2-9-9最大负数最大负数=1,11 111;1.000 000 001最小负数最小负数=0,11 111;1.111 111 111 则负数表示范围为:则负数表示范围为: 2-31 (-2-9) -231 (1-2-9)2)当采用阶移尾原非规格化数时,)当采用阶移尾原非规格化数时, 正数表示范围为:正数表示范

102、围为: 231 (1-2-9) 2-32 2-9 负数表示范围为:负数表示范围为: 2-32 (-2-9) -231 (1-2-9) 注:零视为注:零视为中性数中性数,不在此,不在此范围内。范围内。 (7)当机器数采用)当机器数采用补码规补码规格化格化形式时,若形式时,若不考虑隐藏位不考虑隐藏位,则则最大正数最大正数=0,11 111;0.111 111 111最小正数最小正数=1,00 000;0.100 000 000 其对应的正数真值范围为:其对应的正数真值范围为: 231 (1-2-9)2-32 2-1最大负数最大负数=1,00 000;1.011 111 111最小负数最小负数=0,

103、11 111;1.000 000 000 其对应的负数真值范围为:其对应的负数真值范围为: -2-32 (2-1+2-9) 231 (-1) 17. 设机器数字长为设机器数字长为8位位(包(包括一位符号位),对下列各机器括一位符号位),对下列各机器数进行算术数进行算术左移一位、两位左移一位、两位,算算术右移一位术右移一位、两位两位,讨论结果是,讨论结果是否正确。否正确。 x1原原=0.001 1010; x2原原=1.110 1000; x3原原=1.001 1001; y1补补=0.101 0100; y2补补=1.110 1000; y3补补=1.001 1001; z1反反=1.010

104、1111; z2反反=1.110 1000; z3反反=1.001 1001。 解:解:算术左移一位算术左移一位:x1原原=0.011 0100;正确;正确x2原原=1.101 0000;溢出(丢;溢出(丢1)出错)出错x3原原=1. 011 0010;正确;正确y1补补=0. 010 1000;溢出(丢;溢出(丢1)出错)出错y2补补=1.101 0000;正确;正确y3补补=1.011 0010;溢出(丢;溢出(丢0)出错)出错z1反反=1. 101 1111;溢出(丢;溢出(丢0)出错)出错z2反反=1. 101 0001;正确;正确z3反反=1.011 0011;溢出(丢;溢出(丢0)

105、出错出错 算术左移两位算术左移两位:x1原原=0.110 1000;正确;正确x2原原=1.010 0000;溢出(丢;溢出(丢11)出错)出错x3原原=1. 110 0100;正确;正确 算术左移两位:算术左移两位:y1补补=0. 101 0000;溢出(丢;溢出(丢10)出错)出错y2补补=1.010 0000;正确;正确y3补补=1.110 0100;溢出(丢;溢出(丢00)出错)出错z1反反=1. 011 1111;溢出(丢;溢出(丢01)出错)出错z2反反=1. 010 0011;正确;正确z3反反=1.110 0111;溢出(丢;溢出(丢00)出错)出错 算术右移一位:算术右移一位

106、: x1原原=0.000 1101;正确;正确 x2原原=1.011 0100;正确;正确 x3原原=1.000 1100(1);丢;丢1,产,产生误差生误差 y1补补=0.010 1010;正确;正确 y2补补=1.111 0100;正确;正确 y3补补=1.100 1100(1);丢;丢1,产,产生误差生误差 算术右移一位:算术右移一位:z1反反=1.101 0111;正确;正确z2反反=1.111 0100(0);丢;丢0,产,产生误差生误差z3反反=1.100 1100;正确;正确 算术右移两位:算术右移两位:x1原原=0.000 0110(10);产生);产生误差误差x2原原=1.0

107、01 1010;正确;正确x3原原=1.000 0110(01);产生);产生误差误差y1补补=0.001 0101;正确;正确y2补补=1.111 1010;正确;正确y3补补=1.110 0110(01);产生);产生误差误差z1反反=1.110 1011;正确;正确z2反反=1.111 1010(00);产生);产生误差误差z3反反=1.110 0110(01);产生);产生误差误差 18. 试试比较比较逻辑移位和算术逻辑移位和算术移位。移位。 解:逻辑移位和算术移位的解:逻辑移位和算术移位的区别区别: 逻辑移位逻辑移位是对逻辑数或无符是对逻辑数或无符号数进行的移位,其特点是不论号数进行

108、的移位,其特点是不论左移还是右移,左移还是右移,空出位均补空出位均补0,移位时不考虑符号位。移位时不考虑符号位。 算术移位算术移位是对带符号数进行是对带符号数进行的移位操作,其关键规则是移位的移位操作,其关键规则是移位时时符号位保持不变符号位保持不变,空出位的补,空出位的补入值与数的正负、移位方向、采入值与数的正负、移位方向、采用的码制等有关。补码或反码右用的码制等有关。补码或反码右移时具有移时具有符号延伸特性符号延伸特性。左移时。左移时可能可能产生溢出产生溢出错误,右移时可能错误,右移时可能丢失精度丢失精度。 19. 设机器数字长为设机器数字长为8位(含位(含1位符号位),用补码运算规则计位

109、符号位),用补码运算规则计算下列各题。算下列各题。 (1)A=9/64, B=-13/32, 求求A+B; (2)A=19/32,B=-17/128,求求A-B; (3)A=-3/16,B=9/32, 求求A+B; (4)A=-87, B=53, 求求A-B; (5)A=115, B=-24, 求求A+B。 解:解:(1)A=9/64=(0.001 0010)2 B= -13/32=(-0.011 0100)2 A补补=0.001 0010 B补补=1.100 1100A+B补补= 0. 0 0 1 0 0 1 0 + 1. 1 0 0 1 1 0 0 1. 1 0 1 1 1 1 0 无溢出

110、无溢出 A+B=( -0.010 0010)2 = -17/64 (2)A=19/32=(0.100 1100)2 B= -17/128=(-0.001 0001)2 A补补=0.100 1100 B补补=1.110 1111 -B补补=0.001 0001A-B补补= 0. 1 0 0 1 1 0 0 + 0. 0 0 1 0 0 0 1 0. 1 0 1 1 1 0 1 无溢出无溢出 A-B=(0.101 1101)2 = 93/128(3)A= -3/16=(-0.001 1000)2 B=9/32=(0.010 0100)2 A补补=1.110 1000 B补补= 0.010 0100

111、 A+B补补= 1. 1 1 0 1 0 0 0 + 0. 0 1 0 0 1 0 0 0. 0 0 0 1 1 0 0 无溢出无溢出 A+B=(0.000 1100)2 = 3/32 (4)A= -87=(-101 0111)2 B=53=(110 101)2 A补补=1,010 1001 B补补=0,011 0101 -B补补=1,100 1011A-B补补= 1,0 1 0 1 0 0 1 + 1,1 0 0 1 0 1 1 0,1 1 1 0 1 0 0 溢出溢出 A-B=(-1,000 1100)2 = -140 (5)A=115=(111 0011)2 B= -24=(-11 00

112、0)2 A补补=0,111 0011 B补补=1,110 1000A+B补补= 0,1 1 1 0 0 1 1 + 1,1 1 0 1 0 0 0 0,1 0 1 1 0 1 1无溢出无溢出 A+B=(101 1011)2 = 91 20. 用原码一位乘、两位乘和用原码一位乘、两位乘和补码一位乘(补码一位乘(Booth算法)、两位算法)、两位乘计算乘计算xy。 (1)x= 0.110 111,y= -0.101 110; (2)x= -0.010 111,y= -0.010 101; (3)x= 19, y= 35; (4)x= 0.110 11, y= -0.111 01。 解:先将数据转换

113、成所需的解:先将数据转换成所需的机器数,然后计算,最后结果转机器数,然后计算,最后结果转换成真值。换成真值。(1)x原原=x=0.110111,y原原=1.101110 x*=0.110111, y*=0.101110 x0=0,y0=1,z0=x0 y0=0 1=1 x*y*=0.100 111 100 010 xy原原=1.100 111 100 010 xy= -0. 100 111 100 010原码一位乘:原码一位乘: 部分积部分积 乘数乘数y* 0 . 0 0 0 0 0 0 . 1 0 1 1 1 0 +01 0 . 0 0 0 0 0 0 0 . 1 0 1 1 1 +x* +

114、 0 . 1 1 0 1 1 1 0 . 1 1 0 1 1 11 0 . 0 1 1 0 1 1 1 0 . 1 0 1 1 +x* + 0 . 1 1 0 1 1 1 1 . 0 1 0 0 1 01 0 . 1 0 1 0 0 1 0 1 0 . 1 0 1 +x* + 0 . 1 1 0 1 1 1 1 . 1 0 0 0 0 01 0 . 1 1 0 0 0 0 0 0 1 0 . 1 0 +01 0 . 0 1 1 0 0 0 0 0 0 1 0 . 1 x* + 0 . 1 1 0 1 1 1 1 . 0 0 1 1 1 11 0 . 1 0 0 1 1 1 1 0 0 0 1

115、0 2x*=01.101110,-x*补补=-x补补=1.001001原码两位乘:原码两位乘: 部分积部分积 乘数乘数 Cj 0 0 0 . 0 0 0 0 0 0 0 0 . 1 0 1 1 1 0 0 + 0 0 1 . 1 0 1 1 1 0 +2x* 0 0 1 . 1 0 1 1 1 0 02 0 0 0 . 0 1 1 0 1 1 1 0 0 0 .1 0 1 1 + 1 1 1 . 0 0 1 0 0 1 +-x*补补 1 1 1 . 1 0 0 1 0 0 12 1 1 1 . 1 1 1 0 0 1 0 0 1 0 0 0 .1 0 + 1 1 1 . 0 0 1 0 0 1

116、 +-x*补补 1 1 1 . 0 0 0 0 1 0 12 1 1 1 . 1 1 0 0 0 0 1 0 0 0 1 0 0 0 . + 0 0 0 . 1 1 0 1 1 1 +x* 0 0 0 . 1 0 0 1 1 1 1 0 0 0 1 0 0结果同一位乘,结果同一位乘,xy= -0. 100 111 100 010x补补=x=0.110111y补补=1.010010-x补补=1.0010012x补补=01.101110-2x补补=10.010010xy补补=1.011 000 011 110 0 xy= -0.100 111 100 010 0补码一位乘、两位乘运算过程如补码一位

117、乘、两位乘运算过程如下:下:补码一位乘:补码一位乘:部分积部分积 乘数乘数y补补 yn+1 0 0 . 0 0 0 0 0 0 1 . 0 1 0 0 1 0 0 +01 0 0 . 0 0 0 0 0 0 0 1 . 0 1 0 0 1 0 + 1 1 . 0 0 1 0 0 1 +-x补补 1 1 . 0 0 1 0 0 1 1 1 1 . 1 0 0 1 0 0 1 0 1 . 0 1 0 0 1 + 0 0 . 1 1 0 1 1 1 +x补补 0 0 . 0 1 1 0 1 11 0 0 . 0 0 1 1 0 1 1 1 0 1 . 0 1 0 0 +0 1 0 0 . 0 0 0

118、 1 1 0 1 1 1 0 1 . 0 1 0 + 1 1 . 0 0 1 0 0 1 +-x补补 1 1 . 0 0 1 1 1 11 1 1 . 1 0 0 1 1 1 1 1 1 1 0 1 . 0 1 + 0 0 . 1 1 0 1 1 1 +x补补 0 0 . 0 1 1 1 1 01 0 0 . 0 0 1 1 1 1 0 1 1 1 1 0 1 . 0 + 1 1 . 0 0 1 0 0 1 +-x补补 1 1 . 0 1 1 0 0 0 0 1 1 1 1 0 0 清清0补码两位乘:补码两位乘: 部分积部分积 乘数乘数 yn+1 0 0 0 . 0 0 0 0 0 0 1 1

119、 . 0 1 0 0 1 0 0 + 1 1 0 . 0 1 0 0 1 0 +-2x补补 1 1 0 . 0 1 0 0 1 0 2 1 1 1 . 1 0 0 1 0 0 1 0 1 1 .0 1 0 0 1 + 0 0 0 . 1 1 0 1 1 1 +x补补 0 0 0 . 0 1 1 0 1 1 2 0 0 0 . 0 0 0 1 1 0 1 1 1 0 1 1 .0 1 0 + 0 0 0 . 1 1 0 1 1 1 +x补补 0 0 0 . 1 1 1 1 0 1 2 0 0 0 . 0 0 1 1 1 1 0 1 1 1 1 0 1 1 . 0 + 1 1 1 . 0 0 1

120、0 0 1 +-x补补 1 1 1 . 0 1 1 0 0 0 0 1 1 1 1 0 0 0 . 结果同补码一位乘,结果同补码一位乘, xy= -0. 100 111 100 010 00(2) x= -0.010111, y= -0.010101 x原原=1.010111, y原原=1.010101 x*=0. 010111 , y*=0. 010101 -x*补补=1.101001,2x*=0.101110 -2x*补补=1.010010 x0=1,y0=1,z0=x0 y0=1 1=0 x补补=1.101001, y补补=1.101011 -x补补=0.010111,2x补补=1.01

121、0010 -2x补补=0.101110 x*y*=0.000 111 100 011 xy原原=0.000 111 100 011 xy补补=0.000 111 100 011 0 xy= 0. 000 111 100 011运算过程如下:运算过程如下:原码一位乘:原码一位乘: 部分积部分积 乘数乘数y* 0 . 0 0 0 0 0 0 . 0 1 0 1 0 1 +x* + 0 . 0 1 0 1 1 1 0 . 0 1 0 1 1 1 1 0 . 0 0 1 0 1 1 1 . 0 1 0 1 0 +01 0 . 0 0 0 1 0 1 1 1 . 0 1 0 1 +x* + 0 . 0

122、1 0 1 1 1 0 . 0 1 1 1 0 01 0 . 0 0 1 1 1 0 0 1 1 . 0 1 0 +01 0 . 0 0 0 1 1 1 0 0 1 1 . 0 1 +x* + 0 . 0 1 0 1 1 1 0 . 0 1 1 1 1 01 0 . 0 0 1 1 1 1 0 0 0 1 1 . 0 +01 0 . 0 0 0 1 1 1 1 0 0 0 1 1 原码两位乘:原码两位乘: 部分积部分积 乘数乘数y* Cj 0 0 0 . 0 0 0 0 0 0 0 0 . 0 1 0 1 0 1 0 + 0 0 0 . 0 1 0 1 1 1 +x* 0 0 0 . 0 1

123、0 1 1 1 02 0 0 0 . 0 0 0 1 0 1 1 1 0 0 .0 1 0 1 + 0 0 0 . 0 1 0 1 1 1 +x* 0 0 0 . 0 1 1 1 0 0 02 0 0 0 . 0 0 0 1 1 1 0 0 1 1 0 0 .0 1 + 0 0 0 . 0 1 0 1 1 1 +x* 0 0 0 . 0 1 1 1 1 0 02 0 0 0 . 0 0 0 1 1 1 1 0 0 0 1 1 0 0 . +0 结果同一位乘,结果同一位乘, xy= 0. 000 111 100 011补码一位乘:补码一位乘:部分积部分积 乘数乘数y补补 yn+1 0 0 . 0

124、 0 0 0 0 0 1 . 1 0 1 0 1 1 0 + 0 0 . 0 1 0 1 1 1 +-x补补 0 0 . 0 1 0 1 1 1 1 0 0 . 0 0 1 0 1 1 1 1 . 1 0 1 0 1 1 +0 1 0 0 . 0 0 0 1 0 1 1 1 1 . 1 0 1 0 1 + 1 1 . 1 0 1 0 0 1 +x补补 1 1 . 1 0 1 1 1 0 1 1 1 . 1 1 0 1 1 1 0 1 1 1 . 1 0 1 0 + 0 0 . 0 1 0 1 1 1 +-x补补 0 0 . 0 0 1 1 1 01 0 0 . 0 0 0 1 1 1 0 0

125、1 1 1 . 1 0 1 + 1 1 . 1 0 1 0 0 1 +x补补 1 1 . 1 1 0 0 0 01 1 1 . 1 1 1 0 0 0 0 0 0 1 1 1 . 1 0 + 0 0 . 0 1 0 1 1 1 +-x补补 0 0 . 0 0 1 1 1 1 1 0 0 . 0 0 0 1 1 1 1 0 0 0 1 1 1 . 1 +0补码两位乘:补码两位乘: 部分积部分积 乘数乘数 yn+1 0 0 0 . 0 0 0 0 0 0 1 1 . 1 0 1 0 1 1 0 + 0 0 0 . 0 1 0 1 1 1 +-x补补 0 0 0 . 0 1 0 1 1 1 2 0

126、0 0 . 0 0 0 1 0 1 1 1 1 1 .1 0 1 0 1 + 0 0 0 . 0 1 0 1 1 1 +-x补补 0 0 0 . 0 1 1 1 0 0 2 0 0 0 . 0 0 0 1 1 1 0 0 1 1 1 1 . 1 0 1 + 0 0 0 . 0 1 0 1 1 1 +-x补补 0 0 0 . 0 1 1 1 1 0 2 0 0 0 . 0 0 0 1 1 1 1 0 0 0 1 1 1 1 . 1 清清0 +0结果同补码一位乘,结果同补码一位乘, xy= 0. 000 111 100 011 00(3) x= 19, y= 35 x=(10 011)2,y=(1

127、00 011)2 x*= x原原= x补补= 0,010 011 y*= y原原= y补补= 0,100 011 -x*补补= -x补补= 1,101 101 2x*= 2x补补= 0,100 110 -2x*补补= -2x补补= 1,011 010 x0=0,y0=0,z0=x0 y0=0 0=0 xy= x*y*= xy原原= xy补补 = 0,001 010 011 001运算过程如下:运算过程如下:原码一位乘:原码一位乘: 部分积部分积 乘数乘数y* 0,0 0 0 0 0 0 1 0 0 0 1 1 +x* + 0,0 1 0 0 1 1 0,0 1 0 0 1 1 1 0,0 0

128、1 0 0 1 1 1 0 0 0 1 +x* + 0,0 1 0 0 1 1 0,0 1 1 1 0 0 1 0,0 0 1 1 1 0 0 1 1 0 0 0 +01 0,0 0 0 1 1 1 0 0 1 1 0 0 +01 0,0 0 0 0 1 1 1 0 0 1 1 0 +0 1 0,0 0 0 0 0 1 1 1 0 0 1 1 +x* + 0,0 1 0 0 1 1 0,0 1 0 1 0 01 0,0 0 1 0 1 0 0 1 1 0 0 1 原码两位乘:原码两位乘: 部分积部分积 乘数乘数y* Cj 0 0 0,0 0 0 0 0 0 0 0,1 0 0 0 1 1 0

129、+ 1 1 1,1 0 1 1 0 1 +-x*补补 1 1 1,1 0 1 1 0 1 12 1 1 1,1 1 1 0 1 1 0 1 0 0,1 0 0 0 + 0 0 0,0 1 0 0 1 1 +x* 0 0 0,0 0 1 1 1 0 02 0 0 0,0 0 0 0 1 1 1 0 0 1 0 0,1 0 + 0 0 0,1 0 0 1 1 0 +2x* 0 0 0,1 0 1 0 0 1 02 0 0 0,0 0 1 0 1 0 0 1 1 0 0 1 0 0, +0 结果同一位乘,结果同一位乘, xy= 0,001 010 011 001补码一位乘:补码一位乘:部分积部分积

130、乘数乘数y补补 yn+1 0 0,0 0 0 0 0 0 0,1 0 0 0 1 1 0 + 1 1,1 0 1 1 0 1 +-x补补 1 1,1 0 1 1 0 1 1 1 1,1 1 0 1 1 0 1 0,1 0 0 0 1 1 +0 1 1 1,1 1 1 0 1 1 0 1 0,1 0 0 0 1 + 0 0,0 1 0 0 1 1 +x补补 0 0,0 0 1 1 1 0 1 0 0,0 0 0 1 1 1 0 0 1 0, 1 0 0 0 +0 1 0 0,0 0 0 0 1 1 1 0 0 1 0,1 0 0 +0 1 0 0,0 0 0 0 0 1 1 1 0 0 1 0,

131、1 0 + 1 1,1 0 1 1 0 1 +-x补补 1 1,1 0 1 1 1 0 1 1 1,1 1 0 1 1 1 0 1 1 0 0 1 0, 1 + 0 0,0 1 0 0 1 1 +x补补 0 0,0 0 1 0 1 0 0 1 1 0 0 1 0 补码两位乘:补码两位乘: 部分积部分积 乘数乘数 yn+1 0 0 0,0 0 0 0 0 0 0 0,1 0 0 0 1 1 0 + 1 1 1,1 0 1 1 0 1 +-x补补 1 1 1,1 0 1 1 0 1 2 1 1 1,1 1 1 0 1 1 0 1 0 0,1 0 0 0 1 + 0 0 0,0 1 0 0 1 1

132、+x补补 0 0 0,0 0 1 1 1 0 2 0 0 0,0 0 0 0 1 1 1 0 0 1 0 0,1 0 0 + 1 1 1,0 1 1 0 1 0 +-2x补补 1 1 1,0 1 1 1 0 1 2 1 1 1,1 1 0 1 1 1 0 1 1 0 0 1 0 0,1 + 0 0 0,0 1 0 0 1 1 +0 0 0 0,0 0 1 0 1 0 0 1 1 0 0 1 0 0 结果同补码一位乘,结果同补码一位乘, xy= 0. 000 111 100 011 00(4) x= 0. 110 11, y= -0.111 01 x*= x原原= x补补= 0. 110 11

133、y原原=1.111 01,y*=0. 111 01 y补补=1.000 11 -x*补补= -x补补= 1.001 01 2x*= 2x补补= 01.101 10 -2x*补补= -2x补补= 10.010 10 x0=0,y0=1,z0=x0 y0=0 1=1 x*y*=0.110 000 111 1 xy原原=1.110 000 111 1 xy补补=1.001 111 000 10 xy= -0. 110 000 111 1运算过程如下:运算过程如下:原码一位乘:原码一位乘:部分积部分积 乘数乘数y* 0 . 0 0 0 0 0 . 1 1 1 0 1 +x* + 0 . 1 1 0 1

134、 1 0 . 1 1 0 1 1 1 0 . 0 1 1 0 1 1 . 1 1 1 0 +01 0 . 0 0 1 1 0 1 1 . 1 1 1 +x* + 0 . 1 1 0 1 1 1 . 0 0 0 0 1 1 0 . 1 0 0 0 0 1 1 1 . 1 1 +x* + 0 . 1 1 0 1 1 1 . 0 1 0 1 1 1 0 . 1 0 1 0 1 1 1 1 1 . 1 +x* + 0 . 1 1 0 1 1 1 . 1 0 0 0 0 1 0 . 1 1 0 0 0 0 1 1 1 1 原码两位乘:原码两位乘: 部分积部分积 乘数乘数y* Cj 0 0 0 . 0 0

135、 0 0 0 0 . 1 1 1 0 1 0 + 0 0 0 . 1 1 0 1 1 +x* 0 0 0 . 1 1 0 1 1 02 0 0 0 . 0 0 1 1 0 1 1 0 . 1 1 1 + 1 1 1 . 0 0 1 0 1 +-x*补补 1 1 1 . 0 1 0 1 1 12 1 1 1 . 1 1 0 1 0 1 1 1 1 . 0 1 + 0 0 1 . 1 0 1 1 0 +2x* 0 0 1 . 1 0 0 0 0 01 0 0 0 . 1 1 0 0 0 0 1 1 1 1 0 . +0 结果同一位乘,结果同一位乘, xy= -0. 110 000 111 1补码一

136、位乘:补码一位乘: 部分积部分积 乘数乘数y补补 yn+1 0 0 . 0 0 0 0 0 1 . 0 0 0 1 1 0 + 1 1 . 0 0 1 0 1 +-x补补 1 1 . 0 0 1 0 1 1 1 1 . 1 0 0 1 0 1 1 . 0 0 0 1 1 +0 1 1 1 . 1 1 0 0 1 0 1 1 . 0 0 0 1 + 0 0 . 1 1 0 1 1 +x补补 0 0 . 1 0 1 0 0 1 0 0 . 0 1 0 1 0 0 0 1 1 . 0 0 0 +0 1 0 0 . 0 0 1 0 1 0 0 0 1 1 . 0 0 +0 1 0 0 . 0 0 0

137、1 0 1 0 0 0 1 1 . 0 + 1 1 . 0 0 1 0 1 +-x补补 1 1 . 0 0 1 1 1 1 0 0 0 1 0 清清0补码两位乘:补码两位乘: 部分积部分积 乘数乘数 yn+1 0 0 0 . 0 0 0 0 0 1 . 0 0 0 1 1 0 + 1 1 1 . 0 0 1 0 1 +-x补补 1 1 1 . 0 0 1 0 1 2 1 1 1 . 1 1 0 0 1 0 1 1 . 0 0 0 1 + 0 0 0 . 1 1 0 1 1 +x补补 0 0 0 . 1 0 1 0 0 2 0 0 0 . 0 0 1 0 1 0 0 0 1 1 . 0 0 +

138、1 1 0 . 0 1 0 1 0 +-2x补补 1 1 0 . 0 1 1 1 1 1 1 1 1 . 0 0 1 1 1 1 0 0 0 1 0 . 清清0 结果同补码一位乘,结果同补码一位乘, xy= -0. 110 000 111 10 21. 用原码加减交替法和补码用原码加减交替法和补码加减交替法计算加减交替法计算xy。 (1)x=0.100111,y=0.101011; (2)x=-0.10101, y=0.11011; (3)x=0.10100, y= -0.10001; (4)x=13/32, y= -27/32。 解:解: (1)x*=x原原=x补补=x= 0.100 111

139、 y*=y原原=y补补=y= 0.101 011 -y*补补=-y补补=1.010 101 q0=x0 y0=0 0=0 x y=x* y*=x y原原=0.111 010 r*=0.000 0102-6=0.000 000 000 010 计算过程如下:计算过程如下:原码加减交替除法:原码加减交替除法: 被除数(余数)被除数(余数) 商商 0 . 1 0 0 1 1 1 0 . 0 0 0 0 0 0 + 1 . 0 1 0 1 0 1 试减,试减,+-y*补补 1 . 1 1 1 1 0 01 1 . 1 1 1 0 0 0 0 . + 0 . 1 0 1 0 1 1 r0, +-y*补补

140、 0 . 0 1 1 0 1 11 0 . 1 1 0 1 1 0 0.1 1 + 1 . 0 1 0 1 0 1 r0, +-y*补补 0 . 0 0 1 0 1 1续:续: 被除数(余数)被除数(余数) 商商1 0 . 0 1 0 1 1 0 0 . 1 1 1 + 1 . 0 1 0 1 0 1 r0, +-y*补补 1 . 1 0 1 0 1 11 1 . 0 1 0 1 1 0 0.1 1 1 0 + 0 . 1 0 1 0 1 1 r0, +-y*补补 1 . 0 1 0 1 1 1 1 0.1 1 1 0 1 0 + 0 . 1 0 1 0 1 1 r0,+y*(恢恢复余数)复余

141、数) 0 . 0 0 0 0 1 0补码加减交替除法:补码加减交替除法: 被除数(余数)被除数(余数) 商商 0 0 . 1 0 0 1 1 1 0 . 0 0 0 0 0 0 + 1 1 . 0 1 0 1 0 1 试减,试减,x、y同号,同号,+-y补补 1 1 . 1 1 1 1 0 01 1 1 . 1 1 1 0 0 0 0 . + 0 0 . 1 0 1 0 1 1 r、y异号,异号,+y补补 0 0 . 1 0 0 0 1 1 1 0 1 . 0 0 0 1 1 0 0.1 + 1 1 . 0 1 0 1 0 1 r、y同号,同号, +-y补补 0 0 . 0 1 1 0 1 1

142、1 0 0 . 1 1 0 1 1 0 0.1 1 + 1 1 . 0 1 0 1 0 1 r、y同号,同号, +-y补补 0 0 . 0 0 1 0 1 1续:续: 被除数(余数)被除数(余数) 商商1 0 0 . 0 1 0 1 1 0 0 . 1 1 1 + 1 1 . 0 1 0 1 0 1 r、y同号,同号, +-y补补 1 1 . 1 0 1 0 1 11 1 1 . 0 1 0 1 1 0 0.1 1 1 0 + 0 0 . 1 0 1 0 1 1 r、y异号,异号,+y补补 0 0 . 0 0 0 0 0 11 0 0 . 0 0 0 0 1 0 0.1 1 1 0 1 + 1

143、 1 . 0 1 0 1 0 1 r、y同号,同号, +-y补补 1 1 . 0 1 0 1 1 1 1 0.1 1 1 0 1 1 恒置恒置1 + 0 0 . 1 0 1 0 1 1 r、x异号,异号,(恢复余数)恢复余数) 0 0 . 0 0 0 0 1 0 且且r、y异号,异号, +y补补注:恒置注:恒置1引入误差。引入误差。 x y=x y补补= 0.111 011 r补补=0.000 010,r=r*=0.000 000 000 010 (2)x= -0.101 01,y=0.110 11 x原原=1.101 01 x*= 0.101 01 y* = y原原 = y补补= y = 0

144、.110 11 -y*补补= -y补补= 1.001 01 x补补= 1.010 11 q0 = x0 y0 = 1 0 = 1 x* y*= 0.110 00 x y原原=1.110 00 x y = -0.110 00 r*=0.110 002-5 =0.000 001 100 0 计算过程如下:计算过程如下:原码加减交替除法:原码加减交替除法: 被除数(余数)被除数(余数) 商商 0 . 1 0 1 0 1 0 . 0 0 0 0 0 + 1 . 0 0 1 0 1 试减,试减,+-y*补补 1 . 1 1 0 1 01 1 . 1 0 1 0 0 0 . + 0 . 1 1 0 1 1

145、 r0, +-y*补补 0 . 0 0 0 1 11 0 . 0 0 1 1 0 0.1 1 + 1 . 0 0 1 0 1 r0, +-y*补补 1 . 0 1 0 1 1续:续: 被除数(余数)被除数(余数) 商商1 0 . 1 0 1 1 0 0 . 1 1 0 + 0 . 1 1 0 1 1 r0, +y* 1 . 1 0 0 0 11 1 . 0 0 0 1 0 0.1 1 0 0 + 0 . 1 1 0 1 1 r0,+y* 1 . 1 1 1 0 1 1 0.1 1 0 0 0 + 0 . 1 1 0 1 1 r0, +-y*补补 1 . 1 0 1 0 1 1 1 . 0 1

146、0 1 0 1.0 + 0 . 1 0 0 0 1 r0, +y* 1 . 1 1 0 1 11 1 . 1 0 1 1 0 1.0 0 + 0 . 1 0 0 0 1 r0, +-y*补补 1 . 1 1 1 0 11 1 . 1 1 0 1 0 1.0 0 1 0 + 0 . 1 0 0 0 1 r0, 结束结束 注:注:当当x*y*时产生溢出,这种情况在第时产生溢出,这种情况在第一步运算后判断一步运算后判断r的正负时就可发现。此时数的正负时就可发现。此时数值位占领小数点左边的值位占领小数点左边的1位,原码无定义,但位,原码无定义,但算法本身仍可正常运行。算法本身仍可正常运行。补码加减交替

147、除法:补码加减交替除法: 被除数(余数)被除数(余数) 商商 0 0 . 1 0 1 0 0 0 . 0 0 0 0 0 + 1 1 . 0 1 1 1 1 试减,试减,x、y异号,异号,+y补补 0 0 . 0 0 0 1 11 0 0 . 0 0 1 1 0 0 . + 1 1 . 0 1 1 1 1 r、y异号,异号,+y补补 1 1 . 1 0 1 0 1 1 1 1 . 0 1 0 1 0 0.1 + 0 0 . 1 0 0 0 1 r、y同号,同号, +-y补补 1 1 . 1 1 0 1 11 1 1 . 1 0 1 1 0 0.1 1 + 0 0 . 1 0 0 0 1 r、y

148、同号,同号, +-y补补 0 0 . 0 0 1 1 1续:续: 被除数(余数)被除数(余数) 商商1 0 0 . 0 1 1 1 0 0 . 1 1 0 + 1 1 . 0 1 1 1 1 r、y异号,异号, +y补补 1 1 . 1 1 1 0 11 1 1 . 1 1 0 1 0 0.1 1 0 1 + 0 0 . 1 0 0 0 1 r、y同号,同号,+-y补补 0 0 . 0 1 0 1 1 1 0.1 1 0 1 1 恒置恒置1 r、x同号,结同号,结束束 r补补=0.010 11,r=r*=0.000 000 101 1 真符位的产生:真符位的产生:qf = x0 y0 = 0

149、1 = 1 x y补补=10.110 11,x y= -1.001 01 判溢出:判溢出:qf q0 = 1 0 = 1,溢出溢出 注:注:由于本题中由于本题中x*y*,有有溢出。除法运算时一般在运算前溢出。除法运算时一般在运算前判断是否判断是否x* y*,如果该条件成如果该条件成立则停止运算,转溢出处理。但立则停止运算,转溢出处理。但此算法本身在溢出情况下仍可正此算法本身在溢出情况下仍可正常运行,常运行,此时此时数值位占领小数点数值位占领小数点左边的左边的1位位,商需设双符号位商需设双符号位(变(变形补码),以判溢出。采用这种形补码),以判溢出。采用这种方法时运算前可不判溢出,直接方法时运算

150、前可不判溢出,直接进行运算,运算完后再判溢出。进行运算,运算完后再判溢出。(4)x=13/32=(0.011 01)2 y= -27/32=(-0.110 11)2 x*= x原原= x补补= x=0. 011 01 y原原 = 1.110 11 y* = 0.110 11 -y*补补=1.001 01 y补补= 1.001 01 -y补补= 0.110 11 q0 = x0 y0 = 0 1 = 1 x* y*= 0.011 11 x y原原=1.011 11 x y =(-0.011 11)2 = -15/32 r*=0.010 112-5 =0.000 000 101 1原码加减交替除法

151、:原码加减交替除法: 被除数(余数)被除数(余数) 商商 0 . 0 1 1 0 1 0 . 0 0 0 0 0 + 1 . 0 0 1 0 1 试减,试减,+-y*补补 1 . 1 0 0 1 0 1 1 . 0 0 1 0 0 0 . + 0 . 1 1 0 1 1 r0, +y* 1 . 1 1 1 1 1 1 1 . 1 1 1 1 0 0.0 + 0 . 1 1 0 1 1 r0, +-y*补补 0 . 1 0 1 1 1续:续: 被除数(余数)被除数(余数) 商商1 1 . 0 1 1 1 0 0 . 0 1 1 + 1 . 0 0 1 0 1 r0, +-y*补补 0 . 1 0

152、 0 1 11 1 . 0 0 1 1 0 0.0 1 1 1 + 1 . 0 0 1 0 1 r0, +-y*补补 0 . 0 1 0 1 1 1 0.0 1 1 1 1 r0, 结束结束补码加减交替除法:补码加减交替除法: 被除数(余数)被除数(余数) 商商 0 0 . 0 1 1 0 1 0 . 0 0 0 0 0 + 1 1 . 0 0 1 0 1 试减,试减,x、y异号,异号,+y补补 1 1 . 1 0 0 1 01 1 1 . 0 0 1 0 0 1 . + 0 0 . 1 1 0 1 1 r、y同号,同号,+-y补补 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1

153、1 0 1.1 + 0 0 . 1 1 0 1 1 r、y同号,同号,+-y补补 0 0 . 1 1 0 0 11 0 1 . 1 0 0 1 0 1.1 0 + 1 1 . 0 0 1 0 1 r、y异号,异号, +y补补 0 0 . 1 0 1 1 1续:续: 被除数(余数)被除数(余数) 商商1 0 1 . 0 1 1 1 0 1 . 1 0 0 + 1 1 . 0 0 1 0 1 r、y异号,异号, +y补补 0 0 . 1 0 0 1 11 0 1 . 0 0 1 1 0 1.1 0 0 0 + 1 1 . 0 0 1 0 1 r、y异号,异号,+y补补 0 0 . 0 1 0 1

154、1 1 1.1 0 0 0 1 恒置恒置1 r、x同号,结同号,结束束 r补补=0.010 11,r=r*=0.000 000 101 1 x y补补=1.100 01,x y=(-0.011 11)2 = -15/32 22. 设机器字长为设机器字长为16位位(含(含1位符号位),若一次移位需位符号位),若一次移位需1s,一次加法需一次加法需1 s,试问原码一位试问原码一位乘、补码一位乘、原码加减交替乘、补码一位乘、原码加减交替除法和补码加减交替除法各最多除法和补码加减交替除法各最多需多少时间?需多少时间? 解:解:原码一位乘原码一位乘最多需时最多需时=1s15(加)加)+ 1s15(移位)

155、移位)=30s 补码一位乘补码一位乘最多需时最多需时=1s16+1s15=31s 原码加减交替除原码加减交替除最多需时最多需时=1s(16+1)+1s15=32s 补码加减交替除补码加减交替除最多需时最多需时=1s(16+1)+1s15=32s 23. 对于对于尾数为尾数为40位位的浮点的浮点数(不包括符号位在内),若采数(不包括符号位在内),若采用不同的机器数表示,试问当尾用不同的机器数表示,试问当尾数左规或右规时,最多移位次数数左规或右规时,最多移位次数各为多少?各为多少? 解:对于尾数为解:对于尾数为40位的浮点位的浮点数,若采用原码表示,当尾数左数,若采用原码表示,当尾数左规时,最多移

156、位规时,最多移位39次次;反码表示;反码表示时情况同原码;若采用补码表示,时情况同原码;若采用补码表示,当尾数左规时,正数最多移位当尾数左规时,正数最多移位39次次,同原码;负数最多移位,同原码;负数最多移位40次次。当尾数右规时,不论采用何种码当尾数右规时,不论采用何种码制,均只需右移制,均只需右移1次次。 24. 按机器补码浮点运算步按机器补码浮点运算步骤,计算骤,计算xy补补 (1)x=2-011 0.101 100, y=2-010(-0.011 100);); (2)x=2-011(-0.100 010),), y=2-010(-0.011 111);); (3)x=2101(-0.

157、100 101),), y=2100(-0.001 111)。 解:先将解:先将x、y转换成机器数转换成机器数形式:形式:(1)x补补=1,101;0.101 100 y补补=1,110;1.100 100 注:为简单起见,源操作数注:为简单起见,源操作数可直接写成浮点格式,不必规格可直接写成浮点格式,不必规格化。化。1)对阶:)对阶: E补补=Ex补补+-Ey补补 =11,101+00,010=11,111 E补补0,应,应Ey向向Ex对齐对齐,则:则: Ey补补+1=00,100+00,001 =00,101 E补补+-1补补=00,001+11,111 =00,000=0 至此,至此,

158、Ey=Ex,对毕。对毕。 y补补=0,101;1.111 000(1)2)尾数运算:)尾数运算: Mx补补+My补补= 1 1 . 0 1 1 0 1 1 + 1 1 . 1 1 1 0 0 0(1) 1 1 . 0 1 0 0 1 1(1) Mx补补+-My补补= 1 1 . 0 1 1 0 1 1 + 0 0 . 0 0 0 1 1 1(1) 1 1 . 1 0 0 0 1 0(1) 3)结果规格化:)结果规格化: x+y补补=00,101;11.010 011(1) 已是规格化数。已是规格化数。 x-y补补=00,101;11.100 010(1) =00,100;11.000 101(

159、左规(左规1次,阶码减次,阶码减1,尾数左移,尾数左移1位)位) 4)舍入:)舍入: x+y补补=00,101;11.010 011(舍)(舍) x-y补补不变。不变。 5)溢出:)溢出:无无 则:则:x+y=2101(-0.101 101) x-y =2100(-0.111 011) 27. 设浮点数阶码取设浮点数阶码取3位位,尾,尾数取数取6位位(均不包括符号位),要(均不包括符号位),要求阶码用移码运算,尾数用补码求阶码用移码运算,尾数用补码运算,计算运算,计算xy,且结果保留且结果保留1倍倍字长。字长。 (1)x=2-100 0.101101, y=2-011(-0.110101);)

160、; (2)x=2-011(-0.100111),), y=2101(-0.101011)。)。 解:先将解:先将x、y转换成机器数转换成机器数形式:形式:(1)x阶移尾补阶移尾补=0,100;0.101 101 y阶移尾补阶移尾补=0,101;1.001 011 1)阶码相加:)阶码相加: Ex移移+Ey补补=00,100+11,101 =00,001(无溢出)(无溢出)2)尾数相乘:)尾数相乘: (补码两位乘比较法)(补码两位乘比较法) 部分积部分积 乘数乘数 yn+1 0 0 0 . 0 0 0 0 0 0 1 1 . 0 0 1 0 1 1 0 + 1 1 1 . 0 1 0 0 1 1

161、 +-x补补 1 1 1 . 0 1 0 0 1 1 2 1 1 1 . 1 1 0 1 0 0 1 1 1 1 .0 0 1 0 1 + 1 1 1 . 0 1 0 0 1 1 +-x补补 1 1 1 . 0 0 0 1 1 1 2 1 1 1 . 1 1 0 0 0 1 1 1 1 1 1 1 . 0 0 1 + 0 0 0 . 1 0 1 1 0 1 +x补补 0 0 0 . 0 1 1 1 1 0 2 0 0 0 . 0 0 0 1 1 1 1 0 1 1 1 1 1 1 . 0 + 1 1 1 . 0 1 0 0 1 1 +-x补补 1 1 1 . 0 1 1 0 1 0 1 0 1

162、 1 1 1 0 0(清清0)Mx My补补=1.011 010(101 111 00)3)结果规格化:)结果规格化:已是规格化数。已是规格化数。4)舍入:)舍入:设采用设采用0舍舍1入法,应入:入法,应入: xy阶移尾补阶移尾补=0,001;1.011 0115)溢出:)溢出:无无 xy=2-111(-0.100 101)(2)x=2-011(-0.100 111) y=2101(-0.101 011) x阶移尾补阶移尾补=0,101;1.011 001 y阶移尾补阶移尾补=1,101;1.010 101 1)阶码相加:)阶码相加: Ex移移+Ey补补=00,101+00,101 =01,0

163、10(无(无溢出)溢出)2)尾数相乘:)尾数相乘: (补码两位乘比较法)(补码两位乘比较法) 部分积部分积 乘数乘数 yn+1 0 0 0 . 0 0 0 0 0 0 1 1 . 0 1 0 1 0 1 0 + 1 1 1 . 0 1 1 0 0 1 +x补补 1 1 1 . 0 1 1 0 0 1 2 1 1 1 . 1 1 0 1 1 0 0 1 1 1 .0 1 0 1 0 + 1 1 1 . 0 1 1 0 0 1 +x补补 1 1 1 . 0 0 1 1 1 1 2 1 1 1 . 1 1 0 0 1 1 1 1 0 1 1 1 . 0 1 0 + 1 1 1 . 0 1 1 0 0

164、 1 +x补补 1 1 1 . 0 0 1 1 0 0 2 1 1 1 . 1 1 0 0 1 1 0 0 1 1 0 1 1 1 . 0 + 0 0 0 . 1 0 0 1 1 1 +-x补补 0 0 0 . 0 1 1 0 1 0 0 0 1 1 0 1 0 0(清清0)Mx My补补=0.011 010(001 101 00)3)结果规格化:)结果规格化:xy阶移尾补阶移尾补=1,010;0.011 010(001 101 00)= 1,001;0.110 100(011 010 0) 4)舍入:)舍入:设采用设采用0舍舍1入法,应舍:入法,应舍: xy阶移尾补阶移尾补=1,001;0.

165、 110 1005)溢出:)溢出:无无 xy=20010.110 100 28. 机器数格式同上题,要求机器数格式同上题,要求阶码用阶码用移码移码运算,尾数用运算,尾数用补码补码运运算,计算算,计算xy。 (1)x=2101 0.100111, y=2011(-0.101011);); (2)x=2110(-0.101101),), y=2011(-0.111100)。)。 解:先将解:先将x、y转换成机器数转换成机器数形式:形式:(1)x阶移尾补阶移尾补=1,101;0.100 111 y阶移尾补阶移尾补=1,011;1.010 101 1)阶码相减:)阶码相减: Ex移移+-Ey补补=01

166、,101+11,101 =01,010(无溢出)(无溢出)2)尾数相除:)尾数相除: (补码加减交替除法)(补码加减交替除法) 被除数(余数)被除数(余数) 商商 0 0 . 1 0 0 1 1 1 0 . 0 0 0 0 0 0 试减,试减, + 1 1 . 0 1 0 1 0 1 Mx、My异号,异号,+My补补 1 1 . 1 1 1 1 0 01 1 1 . 1 1 1 0 0 0 1 . + 0 0 . 1 0 1 0 1 1 r、My同号,同号,+-My补补 0 0 . 1 0 0 0 1 1 1 0 1 . 0 0 0 1 1 0 1.0 + 1 1 . 0 1 0 1 0 1

167、r、My异号,异号, +My补补 0 0 . 0 1 1 0 1 11 0 0 . 1 1 0 1 1 0 1.0 0 + 1 1 . 0 1 0 1 0 1 r、My异号,异号, +My补补 0 0 . 0 0 1 0 1 1续:续: 被除数(余数)被除数(余数) 商商1 0 0 . 0 1 0 1 1 0 1 . 0 0 0 + 1 1 . 0 1 0 1 0 1 r、My异号,异号, +My补补 1 1 . 1 0 1 0 1 11 1 1 . 0 1 0 1 1 0 1.0 0 0 1 + 0 0 . 1 0 1 0 1 1 r、My同号,同号,+-My补补 0 0 . 0 0 0 0

168、 0 11 0 0 . 0 0 0 0 1 0 1.0 0 0 1 0 + 1 1 . 0 1 0 1 0 1 r、My异号,异号, +My补补 1 1 . 0 1 0 1 1 1 1 1.0 0 0 1 0 1 恒置恒置1 + 0 0 . 1 0 1 0 1 1 r、Mx异号,异号,(恢复余数)恢复余数) 0 0 . 0 0 0 0 1 0 且且r、My同号,同号, +-My补补 Mx My补补= 1.000 101, r补补=0.000 010 r= 0 .000 010 2-6 =0.000 000 000 010 3)结果规格化:)结果规格化:已是规格化数。已是规格化数。4)舍入:)舍

169、入:已恒置已恒置1舍入。舍入。5)溢出:)溢出:无无 x y阶移尾补阶移尾补=1,010;1.000 101 x y=2010(-0.111 011)(2)x=2110(-0.101 101) y=2011(-0.111 100) x阶移尾补阶移尾补=1,110;1.010 011 y阶移尾补阶移尾补=1,011;1.000 100 1)阶码相减:)阶码相减: Ex移移+-Ey补补=01,110+11,101 =01,011(无(无溢出)溢出)2)尾数相除:)尾数相除: (补码加减交替除法)(补码加减交替除法) 被除数(余数)被除数(余数) 商商 1 1 . 0 1 0 0 1 1 0 . 0

170、 0 0 0 0 0 试减,试减, + 0 0 . 1 1 1 1 0 0 Mx、My同号,同号,+-My补补 0 0 . 0 0 1 1 1 11 0 0 . 0 1 1 1 1 0 0 . + 1 1 . 0 0 0 1 0 0 r、My异号,异号,+My补补 1 1 . 1 0 0 0 1 0 1 1 1 . 0 0 0 1 0 0 0.1 + 0 0 . 1 1 1 1 0 0 r、My同号,同号, +-My补补 0 0 . 0 0 0 0 0 01 0 0 . 0 0 0 0 0 0 0.1 0 + 1 1 . 0 0 0 1 0 0 r、My异号,异号, +My补补 1 1 . 0

171、 0 0 1 0 0续:续: 被除数(余数)被除数(余数) 商商1 1 0 . 0 0 1 0 0 0 0 . 1 0 1 + 0 0 . 1 1 1 1 0 0 r、My同号,同号, +-My补补 1 1 . 0 0 0 1 0 01 1 0 . 0 0 1 0 0 0 0.1 0 1 1 + 0 0 . 1 1 1 1 0 0 r、My同号,同号,+-My补补 1 1 . 0 0 0 1 0 01 1 0 . 0 0 1 0 0 0 0.1 0 1 1 1 + 0 0 . 1 1 1 1 0 0 r、My同号,同号, +-My补补 1 1 . 0 0 0 1 0 0 1 0.1 0 1 1

172、 1 1 恒置恒置1 r、Mx同号,同号,结束。结束。Mx My补补= 0.101 111, r补补=1.000 100=My补补 r= -0.111 100 2-6 = -0.000 000 111 100 注:注:由于补码加减交替除法由于补码加减交替除法算法中缺少对部分余数判算法中缺少对部分余数判“0”的的步骤,步骤,因此因此算法运行中的某一步算法运行中的某一步已除尽时,算法不会自动停止已除尽时,算法不会自动停止,而是继续按既定步数运行完。此而是继续按既定步数运行完。此时商由算法本身的这一缺陷引入时商由算法本身的这一缺陷引入了一个误差,而余数的误差正好了一个误差,而余数的误差正好等于除数。

173、等于除数。 商的误差引入的原因:商的误差引入的原因:当当r、My同号时,此题中表示够减(同号时,此题中表示够减(r、Mx同号);当同号);当r、My异号时,此异号时,此题中表示不够减(题中表示不够减(r、Mx异号);异号);因此,当因此,当r=0时,被判为不够减时,被判为不够减(实际上应为够减实际上应为够减),商),商0(实际实际上应商上应商1),由此引入了误差。),由此引入了误差。3)结果规格化:)结果规格化:已是规格化数。已是规格化数。4)舍入:)舍入:已恒置已恒置1舍入。舍入。5)溢出:)溢出:无无 x y阶移尾补阶移尾补=1,011;0.101 111 x y=2011 0.101 1

174、11 29. 设机器字长为设机器字长为32位位,用,用与非门和与或非门设计一个并行与非门和与或非门设计一个并行加法器(假设与非门的延迟时间加法器(假设与非门的延迟时间为为30ns,与或非门的延迟时间为与或非门的延迟时间为45ns),),要求完成要求完成32位加法时间位加法时间不得超过不得超过0.6s。画出进位链及加画出进位链及加法器逻辑框图。法器逻辑框图。 解:首先根据题意要求选择解:首先根据题意要求选择进位方案:进位方案: 1)若采用)若采用串行进位链串行进位链(行波(行波进位),则在进位),则在di、ti函数的基础上,函数的基础上,实现实现32位进位需要的时间为:位进位需要的时间为: T=

175、2ty 32=64ty=64 30=1920ns 不满足不满足0.6s的加法时间限制,的加法时间限制,不能用。(设不能用。(设1ty=30ns) 2)若采用若采用单重分组跳跃进位单重分组跳跃进位(级连方式),则在(级连方式),则在di、ti的基础的基础上,上,4位一组分组,位一组分组,32位进位需:位进位需: T=2.5ty 8组组=20ty=20 30=600ns 刚好满足刚好满足0.6 s加法时间的加法时间的限制,限制, 考虑到一次加法除进位时间外,考虑到一次加法除进位时间外,还需还需di、ti函数的产生时间、和的产函数的产生时间、和的产生时间(最高位和)等因素,故此生时间(最高位和)等因

176、素,故此进位方案仍不适用。进位方案仍不适用。 结论:结论:若采用单重分组跳跃进若采用单重分组跳跃进位,小组规模需在位,小组规模需在6位以上位以上较为合较为合适。即:适。即: T=2.5ty 6组组=15ty=15 30=450ns 除进位外还有除进位外还有150ns(约约5ty)左右的时间供加法开销,较充左右的时间供加法开销,较充裕。裕。 3)若采用)若采用双重分组跳跃进位双重分组跳跃进位(二级先行(二级先行级联进位),级联进位),4位一位一小组,小组,4小组为一大组分组,则小组为一大组分组,则32位进位需:位进位需: T=2.5ty 4级级=10ty=10 30=300ns 完全满足完全满足

177、0.6s的加法时间限的加法时间限制,可以使用。制,可以使用。 32位双重分组跳跃进位的进位链框图见位双重分组跳跃进位的进位链框图见教材教材287页图页图6.23。 6位一组单重分组跳跃进位的进位链框位一组单重分组跳跃进位的进位链框图如下:图如下: 一个完整的加法器还应考虑一个完整的加法器还应考虑一个完整的加法器还应考虑一个完整的加法器还应考虑didi、ti ti产生电路、求产生电路、求产生电路、求产生电路、求和电路等。和电路等。和电路等。和电路等。2 2位位位位(6)(6)6 6位位位位(5)(5)6 6位位位位(4)(4)6 6位位位位(3)(3)6 6位位位位(2)(2)6 6位位位位(1

178、)(1)d d3130 3130 d d2924 2924 d d2318 2318 d d1712 1712 d d116 116 d d5050 t t3130 3130 t t2924 2924 t t2318 2318 t t1712 1712 t t116 116 t t50 50 C C3030 C C2824 2824 C C22182218 C C1612 1612 C C106106 C C4040C C-1-1C C5 5C C1111C C1717C C2323C C2929C C3131 加法器逻辑框图如下。图中,进位链电加法器逻辑框图如下。图中,进位链电路可选上述两种

179、方案之一。路可选上述两种方案之一。求求求求 和和和和 电电电电 路路路路进进进进 位位位位 链链链链进位函数产生电路进位函数产生电路进位函数产生电路进位函数产生电路A A310310 B B310310F F310310C C31 -131 -1 d d310 310 t t310310C C-1-1 30. 设机器字长为设机器字长为16位位,分,分别按别按4、4、4、4和和5、5、3、3分分组,组, (1)画出按两种分组方案)画出按两种分组方案的的单重分组并行进位链框图单重分组并行进位链框图,并,并比较哪种方案运算速度快。比较哪种方案运算速度快。 (2)画出按两种分组方案)画出按两种分组方案

180、的的双重分组并行进位链框图双重分组并行进位链框图,并,并对这两种方案进行比较。对这两种方案进行比较。 (3)用)用74181和和74182画出画出单重和双重分组的并行进位链框单重和双重分组的并行进位链框图。图。 解:解: (1)4444分组分组的的16位位单重分组并行进位链框图单重分组并行进位链框图见教见教材材286页图页图6.22。 5533分组分组的的16位单重分组并行进位单重分组并行进位链框图如下:位链框图如下: 44444444分组分组分组分组的进位时间的进位时间的进位时间的进位时间=2.5ty=2.5ty 4=10ty4=10ty; 55335533分组分组分组分组的进位时间的进位时

181、间的进位时间的进位时间=2.5ty=2.5ty 4=10ty4=10ty; 两种分组方案最长加法时间两种分组方案最长加法时间两种分组方案最长加法时间两种分组方案最长加法时间相同相同相同相同。 结论:结论:结论:结论:单重分组并行进位的最长进位时间只与单重分组并行进位的最长进位时间只与单重分组并行进位的最长进位时间只与单重分组并行进位的最长进位时间只与组数有关,组数有关,组数有关,组数有关,与组内位数无关与组内位数无关与组内位数无关与组内位数无关。5 5位位位位5 5位位位位3 3位位位位3 3位位位位d d15111511 t t1511 1511 d d106106 t t106 106 d

182、 d53 53 t t53 53 d d20 20 t t2020C C-1-1C C14111411 C C9696 C C4 4 C C3 3 C C1 1 C C0 0C C1010C C5 5C C2 2C C1515 (2)4444分组分组的的16位双重分组并位双重分组并行进位链框图见教材行进位链框图见教材289页图页图6.26。 5533分组分组的的16位双重分组并行进位双重分组并行进位链框图如下:位链框图如下:第第第第 二二二二 重重重重 进进进进 位位位位 链链链链小组进位链小组进位链小组进位链小组进位链5 5位位位位小组进位链小组进位链小组进位链小组进位链5 5位位位位小组进

183、位链小组进位链小组进位链小组进位链3 3位位位位小组进位链小组进位链小组进位链小组进位链3 3位位位位d d15111511 t t1511 1511 d d106106 t t106 106 d d53 53 t t53 53 d d20 20 t t2020C C-1-1D D4 4 T T4 4 C C14111411 D D3 3 T T3 3 C C9696 D D2 2 T T2 2 C C4343 D D1 1 T T1 1 C C1010C C1010C C5 5C C2 2C C1515 4444分组分组的进位时间的进位时间=2.5ty 3=7.5ty; 5533分组分组的进

184、位时间的进位时间=2.5ty 3=7.5ty; 两种分组方案最长加法时间两种分组方案最长加法时间相同。相同。 结论:结论:双重分组并行进位的双重分组并行进位的最长进位时间只与组数和级数有最长进位时间只与组数和级数有关,关,与组内位数无关。与组内位数无关。 (3)单重分组单重分组16位并行加法器逻辑图如位并行加法器逻辑图如下(正逻辑):下(正逻辑): 图中,设与进位无关的引脚省略不画,不用的图中,设与进位无关的引脚省略不画,不用的图中,设与进位无关的引脚省略不画,不用的图中,设与进位无关的引脚省略不画,不用的引脚也省略不画。引脚也省略不画。引脚也省略不画。引脚也省略不画。 74182 47418

185、2 4位位位位CLACLA74181741814 4位位位位ALUALU741817418174181741817418174181C C0 0P P3 3 G G3 3 P P2 2 G G2 2 P P1 1 G G1 1 P P0 0 G G0 0C C1212C C8 8C C4 4C C161674181741814 4位位位位ALUALU7418174181741817418174181 74181 C C0 0C C1212C C8 8C C4 4C C1616C Cn+zn+zC Cn+yn+yC Cn+xn+xC Cn n双重分组双重分组双重分组双重分组1616位并行加法器逻

186、辑图如下(正逻辑):位并行加法器逻辑图如下(正逻辑):位并行加法器逻辑图如下(正逻辑):位并行加法器逻辑图如下(正逻辑):指指 令令 系系 统统第第 七七 章章 7. 试比较试比较基址寻址基址寻址和和变址寻址变址寻址。 解:比较如下:解:比较如下: 1)都可有效地)都可有效地扩大扩大指令寻址范指令寻址范围。围。 2)基址寻址时,基准地址由基)基址寻址时,基准地址由基址寄存器给出,地址的址寄存器给出,地址的改变改变反映在反映在位位移量移量A的取值上;变址寻址时,基准的取值上;变址寻址时,基准地址由地址由A给出,地址的改变反映在给出,地址的改变反映在变变址值的自动修改址值的自动修改上,变址值由变址

187、寄上,变址值由变址寄存器给出。存器给出。 3)基址寄存器内容通常由)基址寄存器内容通常由系统系统程序程序设定,变址寄存器内容通常由设定,变址寄存器内容通常由用用户户设定。设定。 4)基址寻址适用于程序的)基址寻址适用于程序的动态动态重定位重定位,变址寻址适用于,变址寻址适用于数组或字符数组或字符串处理串处理,适用场合,适用场合不同不同。 8. 画出画出先变址再间址先变址再间址及及先间址再变址先间址再变址的寻的寻址过程示意图。址过程示意图。 解:解:1)设形式地址为)设形式地址为A,变址寄存器为变址寄存器为IX,则则先变址再间址先变址再间址寻址过程示意如下:寻址过程示意如下: (一重一重间址间址

188、) EA=(IX)+A (IX)+1IXOP M AOP M AIRIRIXIXEAEA操作数操作数操作数操作数+1ALUALUMMMM 2)先间址再变址先间址再变址寻址过程示意:寻址过程示意: EA=(IX)+(A) (IX)+1IXOP M AOP M AIRIRIXIX操作数操作数操作数操作数+1ALUALUMMMMEAEA 9. 画出画出SUB R1指令对操作数的寻址及指令对操作数的寻址及减法过程的流程图。设被减数和结果存于减法过程的流程图。设被减数和结果存于ACC中,中,表示间接寻址,表示间接寻址,R1寄存器的内容为寄存器的内容为2074H。 解:解: SUB R1指令寻址及减法过程

189、的流指令寻址及减法过程的流程图:程图: 取指令(可省)取指令(可省)取指令(可省)取指令(可省)寻址操作:寻址操作:寻址操作:寻址操作:寄存器间址寄存器间址寄存器间址寄存器间址EA=(R1) =2074HEA=(R1) =2074HEA EA MARMAR,读读读读 M(EA) M(EA) MDRMDR(ACC)-(MDR) (ACC)-(MDR) ACCACC A A A A (公操作)(公操作)(公操作)(公操作) 10. 画出执行画出执行ADD *-5指令(指令(*为相对寻址为相对寻址特征)的信息流程图。设另一个操作数和结果特征)的信息流程图。设另一个操作数和结果存于存于ACC中,并假设

190、中,并假设(PC)=4000H。 解:由于本题未指定数据通路结构,因此解:由于本题未指定数据通路结构,因此只能大概地排一下信息流程图,并且流程图中只能大概地排一下信息流程图,并且流程图中突出突出寻址过程寻址过程的实现。的实现。 ADD *-5指令信息流程图如下:指令信息流程图如下: 取指令(可省)取指令(可省)取指令(可省)取指令(可省)寻址计算:寻址计算:寻址计算:寻址计算:EA=(PC)-5EA=(PC)-5=4000H+FFFBH=4000H+FFFBH=3FFBH=3FFBHEA EA MARMAR,读读读读 M(EA) M(EA) MDRMDR(ACC)+(MDR) (ACC)+(M

191、DR) ACCACC A A A A (公操作)(公操作)(公操作)(公操作) 11. 设设相对寻址相对寻址的转移指令占的转移指令占两个两个字节,第一个字节是操作码,字节,第一个字节是操作码,第二个字节是第二个字节是相对位移量相对位移量,用,用补补码码表示。假设当前转移指令第一表示。假设当前转移指令第一字节所在的地址为字节所在的地址为2000H,且,且CPU每取出一个字节便每取出一个字节便自动完成自动完成(PC)+1PC的操作。试问当执的操作。试问当执行行JMP *+8和和JMP *-9指令时,指令时,转移指令第二字节的内容各为多转移指令第二字节的内容各为多少?少? 解:据题意,相对寻址的转解

192、:据题意,相对寻址的转移指令格式如下:移指令格式如下:OPOPA A2000H2000H2001H2001H2002H2002H 当执行当执行JMP指令时,指令时,指令第指令第二字节的内容不变二字节的内容不变,PC的内容变的内容变为为2002H。此时转移指令第二字此时转移指令第二字节内容各为:节内容各为: A1= +8 = 0000 1000 = 08H A2= -9 = 1111 0111 = F7H 其有效地址各为:其有效地址各为: EA1= (PC) +8 = 2002H+0008H = 200AH EA2= (PC) 9 =2002H+FFF7H = 1FF9H 12. 某机主存容量为

193、某机主存容量为4M 16位位,且存储字长,且存储字长等于等于指令字长,指令字长,若该机指令系统可完成若该机指令系统可完成108种种操操作,操作码位数作,操作码位数固定固定,且具有直,且具有直接、间接、变址、基址、相对、接、间接、变址、基址、相对、立即等立即等六种寻址方式六种寻址方式,试回答:,试回答: (1)画出)画出一地址指令格式一地址指令格式并指出各字段的作用;并指出各字段的作用; (2)该指令)该指令直接寻址直接寻址的最的最大范围;大范围; (3)一次一次间址和间址和多次多次间址间址的寻址范围;的寻址范围; (4)立即数立即数的范围(十进的范围(十进制表示);制表示); (5)相对寻址的

194、)相对寻址的位移量位移量(十进制表示);(十进制表示); (6)上述六种寻址方式的)上述六种寻址方式的指令哪一种执行时间指令哪一种执行时间最短最短?哪一?哪一种种最长最长?为什么?哪一种便于?为什么?哪一种便于程程序浮动序浮动?哪一种最适合处理?哪一种最适合处理数组数组问题?问题? (7)如何修改指令格式,)如何修改指令格式,使指令的寻址范围可扩大到使指令的寻址范围可扩大到4M? (8)为使一条转移指令能为使一条转移指令能转移到主存的转移到主存的任一位置任一位置,可采取,可采取什么措施?简要说明之。什么措施?简要说明之。 解:解: (1)单字长一地址指令)单字长一地址指令格格式式: 7 3 6

195、 OP M A OP M A 各字段的作用:各字段的作用:各字段的作用:各字段的作用: OPOP操作码操作码操作码操作码字段,提供至少字段,提供至少字段,提供至少字段,提供至少108108种指令操作码;种指令操作码;种指令操作码;种指令操作码; MM寻址方式码寻址方式码寻址方式码寻址方式码字段,指出字段,指出字段,指出字段,指出6 6种种种种寻址方式;寻址方式;寻址方式;寻址方式; AA形式地址形式地址形式地址形式地址字段,给出寻址所字段,给出寻址所字段,给出寻址所字段,给出寻址所需的形式地址。需的形式地址。需的形式地址。需的形式地址。 (2)A为为6位,该指令直接寻位,该指令直接寻址的最大范

196、围为址的最大范围为26=64字字; (3)一次间址的寻址范围为)一次间址的寻址范围为216=64K字字; 多次间址的寻址范围为多次间址的寻址范围为215=32K字;字; (4)立即数的范围:若采用)立即数的范围:若采用补码表示为补码表示为1FH20H;十进制表示十进制表示为为31 -32;无符号数为;无符号数为063; (5)相对寻址的位移量范围相对寻址的位移量范围在采用补码表示时同立即数范围,在采用补码表示时同立即数范围,为为31 -32; (6)六种寻址方式中,)六种寻址方式中,立立即寻址即寻址指令执行时间最短,因为指令执行时间最短,因为此时不需寻址;此时不需寻址; 间接寻址间接寻址指令执

197、行时间最长,指令执行时间最长,因为寻址操作需访存一次到多次;因为寻址操作需访存一次到多次; 相对寻址相对寻址便于程序浮动,因便于程序浮动,因为此时操作数位置可随程序存储为此时操作数位置可随程序存储区的变动而改变,总是相对于程区的变动而改变,总是相对于程序一段距离;序一段距离; 变址寻址变址寻址最适合处理数组问最适合处理数组问题,因为此时变址值可题,因为此时变址值可自动修改自动修改而不需要修改程序。而不需要修改程序。 (7)为使指令寻址范围可)为使指令寻址范围可扩大到扩大到4M,需要有效地址需要有效地址22位,位,此时可将单字长一地址指令的格此时可将单字长一地址指令的格式改为式改为双字长双字长,

198、如下图示:,如下图示: 7 3 6 OP M A OP M AA A 1616 图中,指令的第一字图中,指令的第一字图中,指令的第一字图中,指令的第一字保持保持保持保持原来格原来格原来格原来格式不变,形式地址式不变,形式地址式不变,形式地址式不变,形式地址A A扩展扩展扩展扩展到第到第到第到第2 2个字。个字。个字。个字。这样,直接寻址时,这样,直接寻址时,这样,直接寻址时,这样,直接寻址时,EA=A=16+6=EA=A=16+6=2222位位位位,正好可访问,正好可访问,正好可访问,正好可访问4M4M地址空间。由于地址空间。由于地址空间。由于地址空间。由于A A的扩展,变址、基址、相对、立即

199、数的扩展,变址、基址、相对、立即数的扩展,变址、基址、相对、立即数的扩展,变址、基址、相对、立即数等寻址方式也扩展到等寻址方式也扩展到等寻址方式也扩展到等寻址方式也扩展到2222位。位。位。位。 (8)如使一条转移指令能如使一条转移指令能转移到主存的转移到主存的任一位置任一位置,可采用,可采用上述双字长一地址指令,通过上述双字长一地址指令,通过选选用合适的用合适的寻址方式完成。(如选寻址方式完成。(如选用直接寻址就可转移到主存任一用直接寻址就可转移到主存任一位置,但选用相对寻址则只能在位置,但选用相对寻址则只能在2M范围内转移。)范围内转移。) 除此之外,(除此之外,(7)、()、(8)两)两

200、题也可通过题也可通过段寻址方式段寻址方式达到扩大达到扩大寻址空间的目的。总之,不论采寻址空间的目的。总之,不论采取何种方式,最终得到的取何种方式,最终得到的实际地实际地址址应是应是22位位。 13. 举例举例说明哪几种寻址方说明哪几种寻址方式在指令的执行阶段式在指令的执行阶段不访问不访问存储存储器?哪几种寻址方式在指令的执器?哪几种寻址方式在指令的执行阶段只需行阶段只需访问一次访问一次存储器?完存储器?完成什么样的指令,包括取指令在成什么样的指令,包括取指令在内共内共访问四次访问四次存储器?存储器? 解:举例如下:解:举例如下: 1)一地址指令在执行阶段)一地址指令在执行阶段不访存的寻址方式有

201、:不访存的寻址方式有:寄存器寻寄存器寻址址、立即寻址。立即寻址。 2)一地址指令在执行阶段)一地址指令在执行阶段只访存一次的寻址方式有:只访存一次的寻址方式有:寄存寄存器间接寻址、器间接寻址、直接寻址、基址寻直接寻址、基址寻址、变址寻址、相对寻址、址、变址寻址、相对寻址、页面页面寻址。寻址。 3)包括取指在内共访存)包括取指在内共访存四次的指令有:四次的指令有:二重间址的一二重间址的一地址指令地址指令;一重间址的二地址一重间址的二地址指令指令,当另一操作数采用直接、,当另一操作数采用直接、基址、变址、相对、页面、寄基址、变址、相对、页面、寄存器间接寻址时。存器间接寻址时。 15. 某某CPU内

202、有内有32个个32位的位的通用寄存器,设计一种能容纳通用寄存器,设计一种能容纳64种操作种操作的指令系统。假设指令字的指令系统。假设指令字长长等于等于机器字长,试回答:机器字长,试回答: (1)如果主存可)如果主存可直接或间直接或间接接寻址,寻址,采用采用“寄存器寄存器存储器存储器”型指令型指令,能,能直接寻址直接寻址的的最大最大存存储空间是多少?画出储空间是多少?画出指令格式指令格式并并说明各字段的含义。说明各字段的含义。 (2)如果采用)如果采用通用寄存器通用寄存器作基址寄存器,作基址寄存器,则上述则上述“寄存器寄存器存储器存储器”型指令的指令格式型指令的指令格式有有何特点?画出指令格式并

203、指出这何特点?画出指令格式并指出这类指令可访问多大的存储空间?类指令可访问多大的存储空间? 解:解: (1)如采用)如采用RS型型指令,则指令,则此指令一定是此指令一定是二地址二地址以上的地址以上的地址格式,指令格式如下:格式,指令格式如下: 6 5 1 20 OP OP R Ri i I A I A 操作码操作码操作码操作码 寄存器号寄存器号寄存器号寄存器号 间接标志间接标志间接标志间接标志 形式地址形式地址形式地址形式地址 直接寻址的最大空间直接寻址的最大空间直接寻址的最大空间直接寻址的最大空间=2=22020=1M=1M字字字字 此指令格式的设计有较大的发挥此指令格式的设计有较大的发挥此

204、指令格式的设计有较大的发挥此指令格式的设计有较大的发挥余地,为简化设计,在此采用余地,为简化设计,在此采用余地,为简化设计,在此采用余地,为简化设计,在此采用紧贴题紧贴题紧贴题紧贴题意意意意的答题方式,即只按题意要求的因的答题方式,即只按题意要求的因的答题方式,即只按题意要求的因的答题方式,即只按题意要求的因素设计,不考虑扩展因素。素设计,不考虑扩展因素。素设计,不考虑扩展因素。素设计,不考虑扩展因素。 (2)如采用基址寻址,则)如采用基址寻址,则指令格式中应给出指令格式中应给出基址寄存器号基址寄存器号,以指定哪一个通用寄存器用作基以指定哪一个通用寄存器用作基址寄存器。指令格式变为:址寄存器。

205、指令格式变为: 6 5 1 1 5 14 OP OP R Ri i I B I B BRBRi i A A 其中:其中:其中:其中:I I、B B可省(可省(可省(可省(B B为基址寻址标为基址寻址标为基址寻址标为基址寻址标志),志),志),志),BRiBRi为基址寄存器号。基址寻址为基址寄存器号。基址寻址为基址寄存器号。基址寻址为基址寄存器号。基址寻址时:时:时:时: 寻址的最大空间寻址的最大空间寻址的最大空间寻址的最大空间=2=23232=4G=4G字字字字 其寻址范围仅与基址位数有关,与其寻址范围仅与基址位数有关,与其寻址范围仅与基址位数有关,与其寻址范围仅与基址位数有关,与形式地址位数

206、无关。形式地址位数无关。形式地址位数无关。形式地址位数无关。 16. 某机字长某机字长16位位,存储器直,存储器直接寻址空间为接寻址空间为128字字,变址时的位,变址时的位移量为移量为-64+63,16个个通用寄存器通用寄存器均可作为变址寄存器。采用扩展操均可作为变址寄存器。采用扩展操作码技术,设计一套指令系统格式,作码技术,设计一套指令系统格式,满足下列寻址类型的要求:满足下列寻址类型的要求: (1)直接寻址的二地址指令)直接寻址的二地址指令3条条; (2)变址寻址的一地址指令)变址寻址的一地址指令6条条; (3)寄存器寻址的二地址指)寄存器寻址的二地址指令令8条条; (4)直接寻址的一地址

207、指令)直接寻址的一地址指令12条条; (5)零地址指令)零地址指令32条条。 试问还有多少种代码未用?若试问还有多少种代码未用?若安排安排寄存器寻址的一地址指令寄存器寻址的一地址指令,还,还能容纳多少条?能容纳多少条? 解:题意分析:解:题意分析: 设设指令字长指令字长=机器字长机器字长,128字的直接寻址空间要求字的直接寻址空间要求形式地址形式地址A为为7位位,-64+63的位移量也需的位移量也需7位位(6位加位加1位符号位),位符号位),16个个通通用寄存器作变址寄存器需用寄存器作变址寄存器需4位位变址变址寄存器号,则指令格式为:寄存器号,则指令格式为: (1)直接寻址的二地址指令:)直接

208、寻址的二地址指令: 2 7 7 OP A OP A1 1 A A2 2 (2 2)变址寻址的一地址指令:)变址寻址的一地址指令:)变址寻址的一地址指令:)变址寻址的一地址指令: 5 4 75 4 7 OP IX A OP IX A (3)寄存器寻址的二地址)寄存器寻址的二地址指令:指令: 8 4 4 OP OP R Ri i R Rj j (4 4)直接寻址的一地址指令:)直接寻址的一地址指令:)直接寻址的一地址指令:)直接寻址的一地址指令: 9 79 7 OP A OP A (5 5)零地址指令:)零地址指令:)零地址指令:)零地址指令: 1616OPOP (6)若安排寄存器寻址的一)若安排

209、寄存器寻址的一地址指令,指令格式应为:地址指令,指令格式应为: 12 4 OP OP R Ri i 要清楚是否有要清楚是否有要清楚是否有要清楚是否有冗余编码冗余编码冗余编码冗余编码,必须做出,必须做出,必须做出,必须做出具体的操作码具体的操作码具体的操作码具体的操作码编码分配方案编码分配方案编码分配方案编码分配方案,见下页。,见下页。,见下页。,见下页。 由于寄存器寻址的一地址指令格式由于寄存器寻址的一地址指令格式由于寄存器寻址的一地址指令格式由于寄存器寻址的一地址指令格式介于介于介于介于直接寻址的一地址指令与直接寻址的一地址指令与直接寻址的一地址指令与直接寻址的一地址指令与0 0地址指令地址

210、指令地址指令地址指令之间,因此在设计之间,因此在设计之间,因此在设计之间,因此在设计0 0地址指令编码时,必地址指令编码时,必地址指令编码时,必地址指令编码时,必须须须须从全从全从全从全1 1开始开始开始开始往下安排,空出的即为冗余往下安排,空出的即为冗余往下安排,空出的即为冗余往下安排,空出的即为冗余编码,可分给寄存器寻址的一地址指令编码,可分给寄存器寻址的一地址指令编码,可分给寄存器寻址的一地址指令编码,可分给寄存器寻址的一地址指令用。这样的编码有用。这样的编码有用。这样的编码有用。这样的编码有3030个个个个,因此还能安排,因此还能安排,因此还能安排,因此还能安排3030条条条条该类指令

211、。(注意:需去掉该类指令。(注意:需去掉该类指令。(注意:需去掉该类指令。(注意:需去掉4 4位位位位RiRi场)场)场)场) 操作码编码分配:操作码编码分配:0 00 1 A1,A2; 3条条直接寻址直接寻址的的二地址二地址指令。指令。1 01 1 0 0 0 IX,A;6条条变址寻址变址寻址的的一地址一地址指令。指令。1 1 1 0 11 1 1 1 0 0 0 0 Ri,Rj;1 1 1 1 0 1 1 1 8条条寄存器寻址寄存器寻址的的二地二地址址指令。指令。1 1 1 1 1 0 0 0 0 A;1 1 1 1 1 1 0 1 1 12条条直接寻址直接寻址的的一一地址地址指令。指令。

212、续:续:1 1 1 1 1 1 1 0 0 0 0 0 Ri;1 1 1 1 1 1 1 1 0 1 1 1 30条条寄存寄存器寻址器寻址的的1 1 1 1 1 1 1 1 1 0 0 0 一地址一地址指指令。令。 (利用(利用30个个冗余编码)冗余编码)1 1 1 1 1 1 1 1 1 1 0 11 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 32条条0地址地址1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 指令指令 17. 某机指令字长某机指令字长16位位,每,每个操作数的地址码为个操作数的地址码为6位,设操作位,设操作码长度码长度固定固定,指令分为零地址

213、、,指令分为零地址、一地址和二地址一地址和二地址三种三种格式。若零格式。若零地址指令有地址指令有M种种,一地址指令有,一地址指令有N种种,则二地址指令最多有几种,则二地址指令最多有几种?若操作码位数可变,则二地址?若操作码位数可变,则二地址指令最多允许有几种?指令最多允许有几种? 解:解:1)若采用定长操作码)若采用定长操作码时,二地址指令格式如下:时,二地址指令格式如下: 4 6 6 OP OP A A1 1 A A2 2 此时,无论指令中有几个地址,此时,无论指令中有几个地址,此时,无论指令中有几个地址,此时,无论指令中有几个地址,指令格式都不变指令格式都不变指令格式都不变指令格式都不变。

214、 设二地址指令有设二地址指令有K种,则:种,则: K=24-M-N 当当M=1(最小值),最小值),N=1(最小值)时,二地址指令最多最小值)时,二地址指令最多有:有: Kmax=16-1-1=14种种 2)若采用变长操作码时,)若采用变长操作码时,二地址指令格式仍如二地址指令格式仍如1)所示,但)所示,但操作码长度可随地址码的个数而操作码长度可随地址码的个数而变。此时,变。此时, K= 24 -(N/26 + M/212 ); (N/26 + M/212 向上取向上取整)整) 当当(N/26 + M/212 ) 1时,时,K最大,最大,则二地址指令最多有:则二地址指令最多有: Kmax=16

215、-1=15种种(只留一种(只留一种编码作扩展标志用。)编码作扩展标志用。) 讨论:讨论:此时,一地址指令条此时,一地址指令条数为:数为: N=(24 - K)26 - M/26; ( M/26向上取整)。向上取整)。 零地址指令条数为:零地址指令条数为: M = 216 - 212K - 26N; 当当K最大时(最大时(K=15),),一地一地址指令最多有:址指令最多有: Nmax=64 - 1=63种;种; 零地址指令最多有:零地址指令最多有: Mmax=64种种返回返回返回返回目录目录目录目录CPU的结构和功能的结构和功能第第 八八 章章 2. 什么是什么是指令周期指令周期?指令周?指令周

216、期是否有一个期是否有一个固定值固定值?为什么?为什么? 解:解: 指令周期是指一条指令从指令周期是指一条指令从开开始取指令直到指令执行完始取指令直到指令执行完这段时这段时间。间。 由于计算机中各种指令执行由于计算机中各种指令执行所需的时间差异很大,因此为了所需的时间差异很大,因此为了提高提高CPU运行效率,即使在运行效率,即使在同步同步控制控制的机器中,不同指令的指令的机器中,不同指令的指令周期长度都是周期长度都是不一致不一致的,也就是的,也就是说指令周期对于不同的指令来说说指令周期对于不同的指令来说不是一个固定值不是一个固定值。 4. 设设CPU内有下列部件:内有下列部件:PC、IR、SP、

217、AC、MAR、MDR和和CU,要求:要求: (1)画出完成间接寻址的)画出完成间接寻址的取数指令取数指令LDAX(将主存某地将主存某地址单元址单元X的内容取至的内容取至AC中)的数中)的数据流(从取指令开始)。据流(从取指令开始)。 (2)画出)画出中断周期中断周期的数据的数据流。流。 解:解:CPU中的数据流向与所中的数据流向与所采用的数据通路结构直接相关,采用的数据通路结构直接相关,不同的数据通路中的数据流是不不同的数据通路中的数据流是不一样的。一样的。常用的数据通路结构方常用的数据通路结构方式有直接连线、单总线、双总线、式有直接连线、单总线、双总线、三总线等形式,目前大多采用三总线等形式

218、,目前大多采用总总线结构线结构,直接连线方式仅适用于,直接连线方式仅适用于结构特别简单的机器中。结构特别简单的机器中。R/-WR/-W 为简单起见,本题采用为简单起见,本题采用单总线单总线将题意所给将题意所给部件连接起来,框图如下:部件连接起来,框图如下:中中中中断断断断系系系系统统统统P PC CMMA AR RMMD DR RS SP PA AC CZ ZCUCUI IR RMMA AL LU U单总线(单总线(单总线(单总线(BUSBUS) 微命令序列微命令序列微命令序列微命令序列 (1)假设为)假设为一重间址一重间址,在上述数据通路中,完,在上述数据通路中,完成间接寻址的取数指令成间接

219、寻址的取数指令LDAX的数据流如下页:的数据流如下页:LDAX指令周期流程图:指令周期流程图: 说说 明明 送指令地址送指令地址CU向存储器发读令向存储器发读令(读出指令读出指令)指向下一指令地址指向下一指令地址取出指令取出指令指令译码指令译码OP=OP=?PCBUS MAR存储器读(存储器读(CU(R) M)PC+1 PCMDR MDR BUS BUS IRIR LDALDA LDA IRIR(X X)MARMAR存储器读(存储器读(存储器读(存储器读(CU(R) CU(R) MM)MDR BUS BUS ACACMDR BUS BUS MARMAR存储器读(存储器读(存储器读(存储器读(C

220、U(R) CU(R) MM)=1?=1? Y Y(间址)间址)间址)间址) N N 说说 明明形式地址形式地址形式地址形式地址X X送送送送MARMAR间接标志判断,间接标志判断,间接标志判断,间接标志判断,本题为本题为本题为本题为=1=1CUCU发读令发读令发读令发读令( (读读读读EAEA) )有效地址送有效地址送有效地址送有效地址送MARMAR CUCU发读令发读令发读令发读令( (读数据读数据读数据读数据) )数据放入数据放入数据放入数据放入ACAC指令末的公操作指令末的公操作指令末的公操作指令末的公操作直直直直接接接接寻寻寻寻址址址址(2)中断周期流程图如下:)中断周期流程图如下:

221、说说 明明 关中断(关中断(关中断(关中断(0 0EINTEINT)SPSPBUSBUSMARMARSP+1SP+1SPSPPCPCBUSBUSMDRMDR存储器写(存储器写(存储器写(存储器写(CU(-W)CU(-W)MM) A A堆栈栈顶地址送堆栈栈顶地址送MAR修改堆栈指针修改堆栈指针断点送内存断点送内存进栈进栈 A 说说 明明SPSPBUSBUSMARMAR SP+1SP+1SPSP向量地址向量地址向量地址向量地址BUSBUSPCPCPSWPSWMDRMDR存储器写(存储器写(存储器写(存储器写(CU(-W)CU(-W)MM) ENDEND栈顶地址送栈顶地址送MAR修改栈指针修改栈指针

222、程序状态字送内存程序状态字送内存进栈进栈转中断服务程序入口转中断服务程序入口中断周期结束中断周期结束 20. 现有现有A、B、C、D四个中断源,其优四个中断源,其优先级由高向低按先级由高向低按A、B、C、D顺序排列。若中顺序排列。若中断服务程序的执行时间为断服务程序的执行时间为20s,请根据下图请根据下图所示时间轴给出的中断源请求中断的时刻,画所示时间轴给出的中断源请求中断的时刻,画出出CPU执行程序的轨迹。执行程序的轨迹。 解:解: CPU执行程序的轨迹图如下:执行程序的轨迹图如下: D D服务服务服务服务 C C服务服务服务服务 B B服务服务服务服务 A A服务服务服务服务现行程序现行程

223、序现行程序现行程序 0 10 20 30 40 50 60 70 80 90 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150100 110 120 130 140 150 t( t(s)s) B B与与C C请求请求 D D请求请求 B B请求请求 A A请求请求 这是一个多重中断的程序运行轨迹,图中忽略了这是一个多重中断的程序运行轨迹,图中忽略了中断响应时间。中断响应时间。 21. 某机有某机有五个五个中断源中断源L0、L1、L2、 L3、L4,按中断响应的优先次序按中断响应的优先次序由高向低排序由高向低排序为为L0L1 L2 L3

224、L4,现要求中断处理次序现要求中断处理次序改为改为L1L3 L4 L0 L2,根据下示格式,根据下示格式,写出各中断源的写出各中断源的屏蔽字屏蔽字。 解:各中断源屏蔽状态见下表:解:各中断源屏蔽状态见下表: 中中中中 断断断断 源源源源 屏屏屏屏 蔽蔽蔽蔽 字字字字 0 1 2 3 40 1 2 3 4 L L0 0 L L1 1 L L2 2 L L3 3 L L4 4 1 0 1 0 0 1 0 1 0 0 1 1 1 1 11 1 1 1 1 0 0 1 0 00 0 1 0 0 1 0 1 1 11 0 1 1 1 1 0 1 0 1 1 0 1 0 1 表中:设屏蔽位表中:设屏蔽位=

225、1表示表示屏蔽屏蔽,屏蔽位屏蔽位=0表示中断表示中断开放开放。 为了使所有中断都能得到及为了使所有中断都能得到及时响应,现行程序的中断屏蔽字时响应,现行程序的中断屏蔽字一般设为全开放(一般设为全开放(全全0)状态。)状态。 22. 设某机配有设某机配有A、B、C三三台设备,其优先顺序是台设备,其优先顺序是ABC,为改变中断处理次序,将它们的为改变中断处理次序,将它们的中断屏蔽字分别设为:中断屏蔽字分别设为:设备设备设备设备屏蔽字屏蔽字屏蔽字屏蔽字A AB BC C111111010010011011 请按下图所示请按下图所示请按下图所示请按下图所示时间轴时间轴时间轴时间轴给出的设备给出的设备给

226、出的设备给出的设备请求中断的时刻,画出请求中断的时刻,画出请求中断的时刻,画出请求中断的时刻,画出CPUCPU执行程序执行程序执行程序执行程序的的的的轨迹轨迹轨迹轨迹。设。设。设。设A A、B B、C C中断服务程序的中断服务程序的中断服务程序的中断服务程序的执行时间均为执行时间均为执行时间均为执行时间均为2020ss。 解:解: CPU执行程序的轨迹如执行程序的轨迹如下:下: A A服务服务服务服务 B B服务服务服务服务 C C服务服务服务服务现行程序现行程序现行程序现行程序 0 10 20 30 40 50 60 70 80 90 t(0 10 20 30 40 50 60 70 80

227、90 t(s)s) A A请求请求 B B请求请求 C C请求请求 返回返回返回返回目录目录目录目录控制单元控制单元CU第第 九九 章章 3. 什么是什么是指令周期指令周期、机器周机器周期期和和时钟周期时钟周期?三者有何关系?三者有何关系? 解:解:CPU每取出并执行一条每取出并执行一条指令所需的全部时间叫指令所需的全部时间叫指令周期指令周期;机器周期是在同步控制的机器中,机器周期是在同步控制的机器中,执行指令周期中一步相对完整的执行指令周期中一步相对完整的操作(指令步)所需时间,通常操作(指令步)所需时间,通常安排安排机器周期长度机器周期长度=主存周期主存周期;时钟周期是指计算机主时钟的周时

228、钟周期是指计算机主时钟的周期时间,它是计算机运行时最基期时间,它是计算机运行时最基本的时序单位,对应完成一个微本的时序单位,对应完成一个微操作所需时间,通常操作所需时间,通常时钟周期时钟周期=计算机主频的倒数。计算机主频的倒数。 4. 能不能说机器的能不能说机器的主频越快主频越快,机器的机器的速度就越快速度就越快,为什么?,为什么? 解:解:不能说不能说机器的主频越快,机器的主频越快,机器的速度就越快。因为机器的机器的速度就越快。因为机器的速度速度不仅与主频有关不仅与主频有关,还与数据,还与数据通路结构、时序分配方案、通路结构、时序分配方案、ALU运算能力、指令功能强弱等多种运算能力、指令功能

229、强弱等多种因素有关,要看因素有关,要看综合效果。综合效果。 5. 设机器设机器A的主频为的主频为8MHz,机器周期含机器周期含4个个时钟周期,且该机时钟周期,且该机的平均指令执行速度是的平均指令执行速度是0.4MIPS,试求该机的试求该机的平均指令周期和机器平均指令周期和机器周期周期,每个指令周期中含,每个指令周期中含几个几个机机器周期?如果机器器周期?如果机器B的主频为的主频为12MHz,且机器周期也含且机器周期也含4个个时钟时钟周期,试问周期,试问B机的机的平均指令执行速平均指令执行速度度为多少为多少MIPS? 解:先通过解:先通过A机的机的平均指令平均指令执行速度执行速度求出其求出其平均

230、指令周期平均指令周期,再通过再通过主频主频求出求出时钟周期时钟周期,然后,然后进一步求出进一步求出机器周期机器周期。B机参数的机参数的算法与算法与A机类似。机类似。 计算如下:计算如下:A机平均指令周期机平均指令周期=1/0.4MIPS=2.5s A机时钟周期机时钟周期=1/8MHz=125ns A机机器周期机机器周期=125ns4=500ns=0.5sA机每个指令周期中含机器周期机每个指令周期中含机器周期个数个数 =2.5s0.5s=5个个B机时钟周期机时钟周期 =1/12MHz 83nsB机机机器周期机器周期 =83ns4 =332ns 设设B机每个指令周期也含机每个指令周期也含5个个机器

231、周期,则:机器周期,则:B机平均指令周期机平均指令周期=332ns5=1.66sB机平均指令执行速度机平均指令执行速度=1/1.66s =0.6MIPS 结论结论:主频的提高:主频的提高有利于有利于机机器执行速度的提高。器执行速度的提高。 6. 设某机主频为设某机主频为8MHz,每每个机器周期平均含个机器周期平均含2个个时钟周期,时钟周期,每条指令平均有每条指令平均有2.5个个机器周期,机器周期,试问该机的试问该机的平均指令执行速度平均指令执行速度为为多少多少MIPS?若机器主频若机器主频不变不变,但,但每个机器周期平均含每个机器周期平均含4个个时钟周期时钟周期,每条指令平均有,每条指令平均有

232、5个个机器周期,机器周期,则该机的则该机的平均指令执行速度平均指令执行速度又是又是多少多少MIPS?由此可得出什么由此可得出什么结论结论? 解:先通过主频求出解:先通过主频求出时钟周时钟周期期,再求出,再求出机器周期机器周期和和平均指令平均指令周期周期,最后通过平均指令周期的,最后通过平均指令周期的倒数倒数求出平均指令执行速度。计求出平均指令执行速度。计算如下:算如下:时钟周期时钟周期=1/8MHz=0.12510-6 =125ns机器周期机器周期=125ns2=250ns平均指令周期平均指令周期=250ns2.5=625ns平均指令执行速度平均指令执行速度=1/625ns=1.6MIPS 当

233、当参数改变后:参数改变后:机器周期机器周期= 125ns4=500ns=0.5s 平均指令周期平均指令周期=0.5s5=2.5s 平均指令执行速度平均指令执行速度=1/2.5s=0.4MIPS 结论:结论:两个主频相同的机器,两个主频相同的机器,执行速度执行速度不一定一样不一定一样。 7. 某某CPU的主频为的主频为8MHz,若已知每个机器周期平均包含若已知每个机器周期平均包含4个个时钟周期,该机的平均指令执行时钟周期,该机的平均指令执行速度为速度为0.8MIPS,试求该机的试求该机的平平均指令周期均指令周期及每个指令周期含几及每个指令周期含几个个机器周期机器周期?若改用时钟周期为?若改用时钟

234、周期为0.4s的的CPU芯片,则计算机的芯片,则计算机的平均指令执行速度平均指令执行速度为多少为多少MIPS?若要得到平均每秒若要得到平均每秒40万次万次的指令的指令执行速度,则应采用执行速度,则应采用主频主频为多少为多少的的CPU芯片?芯片? 解:先通过解:先通过主频主频求出求出时钟周时钟周期期时间,再进一步求出时间,再进一步求出机器周期机器周期和和平均指令周期。平均指令周期。 时钟周期时钟周期=1/8MHz=0.12510-6 =125ns 机器周期机器周期=125ns4=500ns=0.5s 平均指令周期平均指令周期=1/0.8MIPS =1.25 10-6=1.25s 每个指令周期所含

235、机器周期每个指令周期所含机器周期个数个数 = 1.25s/0.5s=2.5个个 当芯片改变后,相应参数变当芯片改变后,相应参数变为:为: 机器周期机器周期=0.4s4=1.6s 平均指令周期平均指令周期=1.6s2.5=4s 平均指令执行速度平均指令执行速度=1/4s =0.25MIPS 若要得到平均每秒若要得到平均每秒40万次的万次的指令执行速度,则应采用的主频指令执行速度,则应采用的主频为:为: 平均指令周期平均指令周期=1/0.4MIPS =2.5 10-6=2.5s 机器周期机器周期=2.5s2.5=1s 时钟周期时钟周期= 1s4=0.25s 主频主频=1/0.25s=4MHz 11

236、. 设设CPU内部结构如图内部结构如图9.4所示,此外还设有所示,此外还设有B、C、D、E、H、L六个寄存器,它们各自的六个寄存器,它们各自的输输入和输出端入和输出端都与内部总线相通,都与内部总线相通,并分别受控制信号并分别受控制信号控制控制(如(如Bi为为寄存器寄存器B的输入控制;的输入控制;Bo为为B的的输出控制)。要求从取指令开始,输出控制)。要求从取指令开始,写出完成下列指令所需的写出完成下列指令所需的控制信控制信号号。(1)ADD B,C;(B)+(C) B)(2)SUB A,H;(AC)-(H) AC) 解:先画出相应指令的流程解:先画出相应指令的流程图,然后将图中每一步数据通路图

237、,然后将图中每一步数据通路操作操作分解分解成相应的微操作,再成相应的微操作,再写写出出同名的微命令即可。同名的微命令即可。(1) ADD B,C指令流程及微命令序列如下:指令流程及微命令序列如下: OP=OP=?PCMARMM读读PC+1 PCMDR MDR IRIR ADDADDPCo,MARi1 R+1(图中未标出,图中未标出,图中未标出,图中未标出, 可与前一步并行)可与前一步并行)可与前一步并行)可与前一步并行)MDRo,IRiBo,YiCo,ALUi,+Zo,Bi ADDADD B BY YZ ZB B(Y Y)+ +(C C)Z Z (2) SUB A,H指令流程及微命令序列如下:

238、指令流程及微命令序列如下: OP=OP=?PCMARMM读读PC+1 PCMDR MDR IRIR SUBSUBPCo,MARi1 R+1(图中未标出,图中未标出,图中未标出,图中未标出, 可与前一步并行)可与前一步并行)可与前一步并行)可与前一步并行)MDRo,IRiHo,YiACo,ALUi,Zo,ACi SUBSUB HHY YZ ZACAC(ACAC) (HH)Z Z 控制单元的设计控制单元的设计第第 十十 章章 1. 假设响应中断时,要求将程假设响应中断时,要求将程序断点存在序断点存在堆栈堆栈内,并且采用内,并且采用软件软件办法办法寻找中断服务程序的入口地址,寻找中断服务程序的入口地

239、址,试写出试写出中断隐指令中断隐指令的的微操作微操作及及节拍节拍安排。安排。 解:设软件查询程序首址为解:设软件查询程序首址为0号号内存单元,则中断隐指令的微操作内存单元,则中断隐指令的微操作命令及节拍安排如下:命令及节拍安排如下:T0 0EINT,SPMART1 PCMDR,0 -W,SP+1SPT2 SPMAR,MDRM(MAR)T3 PSWMDR,0 -W,SP+1SPT4 0PC,MDRM(MAR) 由于题意中没有给出确切的数由于题意中没有给出确切的数据通路结构,故上述节拍分配方案据通路结构,故上述节拍分配方案的的并行性较低并行性较低。 2. 写出完成下列指令的写出完成下列指令的微操微

240、操作及节拍安排作及节拍安排(包括取指操作)。(包括取指操作)。 (1)指令)指令ADD R1,X完成完成将将R1寄存器的内容和主存寄存器的内容和主存X单元的单元的内容相加,结果存于内容相加,结果存于R1的操作。的操作。 (2)指令)指令ISZ X完成将主存完成将主存X单元的内容增单元的内容增1,并根据其结果若,并根据其结果若为为0,则跳过下一条指令执行。,则跳过下一条指令执行。 解:该题题意中解:该题题意中没有指定数据没有指定数据通路通路,因此排序前应先设定一下。,因此排序前应先设定一下。在此设采用在此设采用单总线结构单总线结构的的CPU数据数据通路,且通路,且ALU输入端设两个暂存器输入端设

241、两个暂存器C、D(见见17题图)。并设采用题图)。并设采用同同步控制步控制,每周期,每周期3节拍:节拍: (1)指令)指令ADD R1,X的微的微操作及节拍安排如下:操作及节拍安排如下: 取指周期:取指周期: T0 PCMAR,1R T1 PC+1,M(MAR)MDR T2 MDRIR,OP(IR)ID 执行周期执行周期1: T0 X(IR)MAR,1R T1 R1C,M(MAR)MDR T2 MDRD 执行周期执行周期2: T0 T1 T2 +,ALUR1 (2)指令)指令ISZ X的微操作及的微操作及节拍安排(取指周期同(节拍安排(取指周期同(1),略):),略): 执行周期执行周期1:

242、T0 X(IR)MAR,1R T1 M(MAR)MDR T2 MDRC 执行周期执行周期2: T0 +1,ALUMDR T1 0 -W T2 MDRM(MAR) (PC+1)Z (设(设Z为结果为为结果为0标志)标志) 该指令的操作在一个执行周期该指令的操作在一个执行周期做不完,因此安排了做不完,因此安排了两个两个执行周期。执行周期。 3. 按序写出按序写出下列程序所需的下列程序所需的全部微操作命令及节拍安排。全部微操作命令及节拍安排。指令地址指令地址指令地址指令地址指令指令指令指令200200201201202202203203204204LDA 206LDA 206ADD 207ADD 2

243、07BAN 204BAN 204STA 205STA 205 STP STP 解:由于题意解:由于题意未明确要求未明确要求采采用何种控制器结构,故仍按较简单用何种控制器结构,故仍按较简单的组合逻辑时序关系安排节拍(单的组合逻辑时序关系安排节拍(单总线、同步控制,假设同上题):总线、同步控制,假设同上题): LDA指令:指令: 取指周期:取指周期: T0 PCMAR,1R T1 PC+1,M(MAR)MDR T2 MDRIR,OP(IR)ID 执行周期:执行周期: T0 206(IR)MAR,1R T1 M(MAR)MDR T2 MDRAC ADD指令:指令:取指周期:同上。取指周期:同上。 执

244、行周期执行周期1: T0 207(IR)MAR,1R T1 M(MAR)MDR,ACC T2 MDRD 执行周期执行周期2: T0 T1 T2 +,ALUAC BAN指令:指令:取指周期:同上。取指周期:同上。 执行周期:执行周期: (设(设N为结果为负为结果为负标志)标志) T0 T1 T2 N204(IR)PC STA指令:指令: 取指周期:同上。取指周期:同上。 执行周期:执行周期: T0 205(IR)MAR T1 ACMDR,0 -W T2 MDRM(MAR) STP指令:指令: 取指周期:同上。取指周期:同上。 执行周期:执行周期: T0 T1 T2 0G (G为停机标志。)为停机

245、标志。) 4. 已知已知带返转指令带返转指令的含义如的含义如下图所示,写出机器在完成带返下图所示,写出机器在完成带返转指令时,取指阶段和执行阶段转指令时,取指阶段和执行阶段所需的所需的全部全部微操作及节拍安排。微操作及节拍安排。 主程序主程序 子程子程序序MM 带返转带返转带返转带返转KKM+1M+1JMP I KJMP I KKKK+1K+1间址特征间址特征间址特征间址特征 解:解:假设同上题,假设同上题,仍按组合仍按组合逻辑、单总线、同步控制安排,逻辑、单总线、同步控制安排,带返转指令的全部微操作及节拍带返转指令的全部微操作及节拍如下:如下: 取指周期:取指周期: T0 PCMAR,1R

246、T1 PC+1,M(MAR)MDR T2 MDRIR,OP(IR)ID 执行周期:执行周期: T0 K(IR)MAR T1 M+1MDR,0 -w T2 MDRM(MAR) K+1PC 10. 能否说水平型微指令就能否说水平型微指令就是是直接编码的微指令直接编码的微指令,为什么?,为什么? 解:解:不能说水平型微指令就不能说水平型微指令就是直接编码的微指令是直接编码的微指令,因为符合,因为符合水平型微指令特征的微指令都属水平型微指令特征的微指令都属于水平型微指令,常见的有:直于水平型微指令,常见的有:直接编码、字段直接编码、字段间接编码、字段直接编码、字段间接编码,及混合编码等。接编码,及混合

247、编码等。直接编直接编码的微指令只是最典型的一种。码的微指令只是最典型的一种。 13. 设控制存储器的容量为设控制存储器的容量为51248位位,微程序可在整个控存,微程序可在整个控存空间实现转移,而控制微程序转空间实现转移,而控制微程序转移的条件共有移的条件共有4个个(采用(采用直接控制直接控制),微指令格式如下:,微指令格式如下:操作控制操作控制操作控制操作控制转移条件转移条件转移条件转移条件下地址下地址下地址下地址操作控制操作控制操作控制操作控制顺序控制顺序控制顺序控制顺序控制 试问微指令中的试问微指令中的试问微指令中的试问微指令中的三个字段三个字段三个字段三个字段分别为多分别为多分别为多分

248、别为多少位?少位?少位?少位? 解:微指令各字段位数分配如下:解:微指令各字段位数分配如下:解:微指令各字段位数分配如下:解:微指令各字段位数分配如下: 35 4 935 4 9操作控制操作控制操作控制操作控制转转转转 移移移移 条条条条 件件件件下地址下地址下地址下地址操作控制操作控制操作控制操作控制顺序控制顺序控制顺序控制顺序控制 该微指令格式为该微指令格式为该微指令格式为该微指令格式为水平型微指令水平型微指令水平型微指令水平型微指令。 17. 假设机器的假设机器的主要部件主要部件有:有:程序计数器程序计数器PC,指令寄存器指令寄存器IR,通通用寄存器用寄存器R0、R1、R2、R3,暂存器

249、暂存器C、D,ALU,移位器,存储器地址移位器,存储器地址寄存器寄存器MAR,存储器数据寄存器存储器数据寄存器MDR及存储矩阵及存储矩阵M。 (1)要求采用要求采用单总线结构单总线结构画画出包含上述部件的出包含上述部件的硬件框图硬件框图,并注,并注明数据流动方向。明数据流动方向。 (2)画出)画出ADD(R1),(),(R2)指令在取指阶段和执行阶段的指令在取指阶段和执行阶段的信信息流程图息流程图。 R1寄存器存放源操作数寄存器存放源操作数地址,地址,R2寄存器存放目的操作数的寄存器存放目的操作数的地址。地址。 (3)写出对应该流程图所需)写出对应该流程图所需的全部的全部微操作命令微操作命令。

250、 解:解: (1)采用)采用单总线结构单总线结构的的CPU硬件框硬件框图如下:图如下:R/-WR/-WP PC CMMA AR RMMD DR RR R3 3D D移移移移位位位位器器器器I IR RMMA AL LU U单总线(单总线(单总线(单总线(BUSBUS)R R2 2R R1 1R R0 0C C+ + +1+1图中,数据流动方向如图中,数据流动方向如图中,数据流动方向如图中,数据流动方向如箭头箭头箭头箭头所示。所示。所示。所示。(2)ADD(R1),(),(R2) (3)对应该流对应该流程图所程图所 指令流程图如下:指令流程图如下: 需的全部微操需的全部微操作命令。作命令。 OP

251、=OP=?PCMARMM读读PC+1 PCMDR MDR IRIR ADDADDPCo,MARi1 R+1(可与前一步并行)可与前一步并行)可与前一步并行)可与前一步并行)MDRo,IRiR1o,MARi1 R MDRo,CiR2o,MARi1 RMDRo,Di ADDADD R1R1MARMARMDRMDRC C MM读读R2R2MARMAR MM读读 MDRMDRD D B B+,MDRi0 -W公操作公操作(C C)+ +(D D)MDRMDR MM写写B B 18. 假设机器的主要部件同假设机器的主要部件同17题,题,外加一个控制门外加一个控制门G。 (1)要求采用要求采用双总线结构双

252、总线结构(每组总线的数据流动方向是(每组总线的数据流动方向是单单向的向的),画出包含上述部件的硬),画出包含上述部件的硬件框图,并注明数据流动方向。件框图,并注明数据流动方向。 (2)画出)画出SUB R1,R3完完成成(R1)-(R3)R1操作的指操作的指令周期信息流程图(假设指令地令周期信息流程图(假设指令地址已放在址已放在PC中),并列出相应的中),并列出相应的微操作控制信号序列。微操作控制信号序列。 解:解: (1)双总线结构双总线结构的的CPU硬件框图如硬件框图如下下:图中,数据流动方向如图中,数据流动方向如图中,数据流动方向如图中,数据流动方向如箭头箭头箭头箭头所示。所示。所示。所

253、示。R/-WR/-WP PC CMMA AR RMMD DR RR R3 3D D移移移移位位位位器器器器I IR RMMA AL LU UA A总线总线总线总线R R0 0C C+ + +1+1GGB B总线总线总线总线R R1 1R R2 2 (2) SUB R1,R3指令周期流程图如指令周期流程图如下:下:OP=OP=?PCMARMM读读PC+1 PCMDR MDR IRIR SUBSUBPCo,G,MARi1 R+1(可与前一步并行可与前一步并行可与前一步并行可与前一步并行)MDRo,G,IRi R1o,G,CiR2o,G,Di-,G,R1i SUBSUB R1R1C C R2R2D

254、D (C C)- -(D D)R1R1 19. 下表给出下表给出8条微指令条微指令I1I8及所包含的微命令控制信号,设及所包含的微命令控制信号,设计微指令操作控制字段格式,要计微指令操作控制字段格式,要求求所使用的控制位最少所使用的控制位最少,而且保,而且保持微指令本身内在的持微指令本身内在的并行性并行性。微指令微指令微指令微指令所含的微命令所含的微命令所含的微命令所含的微命令I I1 1I I2 2I I3 3I I4 4I I5 5I I6 6I I7 7I I8 8a b c d ea b c d ea d f ga d f gb hb hc cc e g ic e g ia h ja

255、h jc d hc d ha b ha b h 解:为使设计出的微指令操作控制字段解:为使设计出的微指令操作控制字段最最短短,并且保持微指令本身内在的,并且保持微指令本身内在的并行性并行性,应采,应采用用混合编码法混合编码法。首先找出。首先找出互斥互斥的微命令组,为的微命令组,为便于分析,将微命令表重画如下(表中的便于分析,将微命令表重画如下(表中的 表表示该条微指令有这个微命令):示该条微指令有这个微命令):微指令微指令微指令微指令所含的微命令所含的微命令所含的微命令所含的微命令a ab bc cd de ef f g gh hi ij jI I1 1 I I2 2 I I3 3 I I4

256、4 I I5 5 I I6 6 I I7 7 I I8 8 由表中微命令的分布情况可看出:由表中微命令的分布情况可看出:a、b、c、d、e微命令的并行性太高,因此不能放在微命令的并行性太高,因此不能放在同一字段中。另外,由分析可知,在同一字段中。另外,由分析可知,在2、3、4分组的互斥组中,分组的互斥组中,3个一组的微命令互斥组对控个一组的微命令互斥组对控制位的压缩作用最明显制位的压缩作用最明显。因此,应尽可能多的。因此,应尽可能多的找出找出3个一组的互斥组。现找出的互斥组有:个一组的互斥组。现找出的互斥组有:cfj,dij,efh,fhi,bgj,ehj,efj等等。等等。 从中找出从中找出

257、互不相重的互斥组互不相重的互斥组有两个:有两个:dij,efh。则。则:微指令操作控制字段格式安排如下:微指令操作控制字段格式安排如下: 1 1 1 1 2 2a ab bc cd ddijdijefhefh顺顺顺顺 序序序序 控控控控 制制制制 字字字字 段段段段操作控制字段操作控制字段操作控制字段操作控制字段 各字段编码分配如下:各字段编码分配如下:a 0 无操作无操作; b 0 无无操作操作; 1 a微命令;微命令; 1 b微微命令命令c 0 无操作无操作; g 0 无无操作操作; 1 c微命令;微命令; 1 g微微命令命令dij 00 无操作无操作; efh 00 无操作无操作; 01 d微命令;微命令; 01 e 10 i微命令;微命令; 10 f 11 j微命令;微命令; 11 h 注:每组都应为注:每组都应为“无操作无操作”留留一种编码。一种编码。 与采用直接控制法与采用直接控制法比较比较: 直接控制法:直接控制法:10个微命令需个微命令需10位位操作控制位;操作控制位; 本方案:本方案:10个微命令需个微命令需8位位操操作控制位,压缩了作控制位,压缩了2位位。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号