计算机组成原理_第四版课后习题答案3.pdf
第一章1.比较数字计算机和模拟计算机的特点。解:模拟计算机的特点:数值由连续量来表示,运算过程是连续的;数字计算机的特点:数值由数字量(离散量)来表示,运算按位进行。两者主要区别见P1表1.1。2.数字计算机如何分类?分类的依据是什么?解:分类:数字计算机分为专用计算机和通用计算机。通用计算机又分为巨型机、大型机、中型机、小型机、微型机和单片机六类。分类依据:专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据存储容量、指令系统规模和机器价格等因素。3.数字计算机有那些主要应用?(略)4 .冯.诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分?解:冯.诺依曼型计算机的主要设计思想是:存储程序和程序控制。存储程序:将解题的程序(指令序列)存放到存储器中;程序控制:控制器顺序执行存储的程序,按指令功能控制全机协调地完成运算任务。主要组成部分有:控制器、运算器、存储器、输入设备、输出设备。5 .什么是存储容量?什么是单元地址?什么是数据字?什么是指令字?解:存储容量:指存储器可以容纳的二进制信息的数量,通常用单位K B、M B、G B来度量,存储容量越大,表示计算机所能存储的信息量越多,反映了计算机存储空间的大小。单元地址:单元地址简称地址,在存储器中每个存储单元都有唯一的地址编号,称为单元地址。数据字:若某计算机字是运算操作的对象即代表要处理的数据,则称数据字。指令字:若某计算机字代表一条指令或指令的一部分,则称指令字。6.什么是指令?什么是程序?解:指令:计算机所执行的每一个基本的操作。程序:解算某一问题的一串指令序列称为该问题的计算程序,简称程序。7.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?解:一般来讲,在取指周期中从存储器读出的信息即指令信息;而在执行周期中从存储器中读出的信息即为数据信息。8.什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能。解:内存:一般由半导体存储器构成,装在底版上,可直接和CPU交换信息的存储器称为内存储器,简称内存。用来存放经常使用的程序和数据。外存:为了扩大存储容量,又不使成本有很大的提高,在计算机中还配备了存储容量更大的磁盘存储器和光盘存储器,称为外存储器,简称外存。外存可存储大量的信息,计算机需要使用时,再调入内存。C P U:包括运算器和控制器。基本功能为:指令控制、操作控制、时间控制、数据加工。适配器:连接主机和外设的部件,起一个转换器的作用,以使主机和外设协调工作。9.计算机的系统软件包括哪几类?说明它们的用途。解:系统软件包括:(1)服务程序:诊断、排错等(2)语言程序:汇编、编译、解释等(3)操作系统(4)数据库管理系统用途:用来简化程序设计,简化使用方法,提高计算机的使用效率,发挥和扩大计算机的功能及用途。1 0 .说明软件发展的演变过程。(略)11.现代计算机系统如何进行多级划分?这种分级观点对计算机设计会产生什么影响?解:多级划分图见P16图1.6。可分为:微程序设计级、一般机器级、操作系统级、汇编语言级和高级语言级。用这种分级的观点来设计计算机,对保证产生一个良好的系统结构是有很大帮助的。12.为什么软件能够转化为硬件?硬件能够转化为软件?实现这种转化的媒介是什么?(略)13.”计算机应用”与应用计算机”在概念上等价吗?用学科角度和计算机系统的层次结构来寿命你的观点。(略)第二章1.写出下列各数的原码、反码、补码、移码表示(用8位二进制数)。其中MSB是 最 高 位(又是符号位)LSB是最低位。如果是小数,小数点在MSB之后;如果是整数,小数点在LSB之后。(1)-35/64(2)23/128(3)-127(4)用小数表示T(5)用整数表示T解:(D先把十进制数-35/64写成二进制小数:(-35/64)10=(-100011/1000000)2=(-100011X 2-110)2=(-0.100011)2令 x=-0.100011B x原=1.1000110(注意位数为8 位)x反=1.0111001x补=1.0111010 x移=0.0111010(2)先把十进制数23/128写成二进制小数:(23/128)10=(10111/10000000)2=(10111X2-111)2=(0.0001011)2令 x=0.0001011B:.x原=0.0001011 x反=0.0001011x补=0.0001011 x移=1.0001011(3)先把十进制数T 2 7 写成二进制小数:(-127)10=(-1111111)2令 卡-1111111B x原=1.1111111 x反=1.0000000 x补=1.0000001 x移=1.0000001(4)令 x=-l.O O O O O O B原码、反码无法表示 x 补=1.0 0 0 0 0 0 0(5)令 Y=-l=-0 0 0 0 0 0 1 B:.Y 原=1 0 0 0 0 0 0 1 Y 补=1 1 1 1 1 1 1 1 x 移=0.0 0 0 0 0 0 0 Y 反=1 1 1 1 1 1 1 0 Y 移=0 1 1 1 1 1 1 12.设区1 补=a 0,a l,a 2 a 6,其中a i 取 0 或 1,若要x 0.5,求 a 0,a l,a 2,a 6 的取值。解:a 0=1,a l=0,a 2,a 6=l.1。3.有一个字长为3 2 位的浮点数,阶码1 0 位(包 括 1 位阶符),用移码表示;尾数2 2 位(包 括 1 位尾符)用补码表示,基数R=2。请写出:(1)最大数的二进制表示;(2)最小数的二进制表示;(3)规格化数所能表示的数的范围;(4)最接近于零的正规格化数与负规格化数。解:(1)1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1(2)1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0(3)1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0(4)0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 01 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 14.将下列十进制数表示成浮点规格化数,阶码3 位,用补码表示;尾数9 位,用补码表示。(1)2 7/64(2)-2 7/64解:(1)2 7/64=1 1 0 1 1 B X 2-6=0.0 1 1 0 1 1 B=0.1 1 0 1 1 B X 2 浮点规格化数:1 1 1 1 0 1 1 0 1 1 0 0 0 0(2)-2 7/64=-1 1 0 1 1 B X 2-6=-0.0 1 1 0 1 1 B=-0.H 0 1 1 B X A浮点规格化数:1 1 1 1 1 0 0 1 0 1 0 0 0 05.已知X 和 Y,用变形补码计算X+Y,同时指出运算结果是否溢出。(1)X=0.1 1 0 1 1 Y=0.0 0 0 1 1(2)X=0.1 1 0 1 1 Y=-0.1 0 1 0 1(3)X=-0.1 0 1 1 0 Y=-0.0 0 0 0 1解:(1)先写出x 和 y的变形补码再计算它们的和 x 补=0 0.1 1 0 1 1 y 补=0 0.0 0 0 1 1 x+y 补=x 补+y 补=0 0.1 1 0 1 1+0 0.0 0 0 1 1=0.1 1 1 1 0 x+y=O.I l l I B 无溢出。(2)先写出x和y的变形补码再计算它们的和 x 补=0 0.1 1 0 1 1 y#=l l.0 1 0 1 1 x+y 补=x 补+y 补=0 0.1 1 0 1 1+1 1.0 1 0 1 1=0 0.0 0 1 1 0 x+y=0.0 0 1 I B 无溢出。(3)先写出x和y的变形补码再计算它们的和 x#=1 1.0 1 0 1 0 y#=l l.1 1 1 1 1 x+y 补=x 补+y 补=1 1.0 1 0 1 0+1 1.1 1 1 1 1=1 1.0 1 0 0 1:.x+y=-0.1 0 U 1 B 无溢出6.已知X和Y,用变形补码计算X-Y,同时指出运算结果是否溢出。(1)x=o.non Y=-o.m u(2)X=0.1 0 1 1 1 Y=0.1 1 0 1 1(3)X=0.1 1 0 1 1 Y=-0.1 0 0 1 1解:(1)先写出x和y的变形补码,再计算它们的差 x 补=0 0.1 1 0 1 1 y#=l 1.0 0 0 0 1 -y 补=0 0.1 1 1 1 1 x-y 补=x 补+-y 补=0 0.1 1 0 1 1+0 0.1 1 1 1 1=0 1.1 1 0 1 0运算结果双符号不相等为正溢出X-Y=+l.1 1 0 1 B(2)先写出x 和 y的变形补码,再计算它们的差 x 补=0 0.1 0 1 1 1 y#=0 0.1 1 0 1 1 -y 补=1 1.0 0 1 0 1 x-y 补=0 0.1 0 1 1 1+1 1.0 0 1 0 1=1 1.1 1 1 0 0 x-y=-0.0 0 1 B 无溢出(3)先写出x 和 y的变形补码,再计算它们的差 x 补=0 0.1 1 0 H y 补=1 1.0 1 1 0 1 -y 补=0 0.1 0 0 1 1 x-y 补=x 补+-y 补=0 0.1 1 0 1 1+0 0.1 0 0 1 1=0 1.0 1 1 1 0运算结果双符号不相等为正溢出X-Y=+1.0 1 1 1 B7.用原码阵列乘法器、补码阵列乘法器分别计算X X Y。(1)x=o.n o n Y=-o.mu(2)x=-o.1 1 1 1 1 Y=-0.1 1 01 1解:(1)用原码阵列乘法器计算:x#=0.1 1 01 1 y 补=1.00001(0)1 1 0 1 1X)(1)0 0 0 0 1(0)1 1 0 1 1(0)0 00 0 0(0)0 0 0 00(0)00 0 0 0(0)0 0 0 0 0(0)(1)(1)(0)(1)(1)(1)0 0 1 0 1 1 1 0 1 1 x X y 补=1.001 01 1 1 01 1:.x X y=-0.1 1 01 0001 018.用原码阵列除法器计算X+Y。(1)x=o.i i o o o Y=-o.mu(2)X=-0.01 01 1 Y=0.1 1 001解:(1)x 原=x 补=0.1 1 000 -I y 门补=1.00001被除数X 0.1 1 000+-I y H 补 1.00001余数为负1.1 1 001 f q0=0左移 1.1 001 0+|y|补 0.1 1 1 1 1余数为正 0.1 0001 -*ql=l左移 1.0001 0+T y|补 1.00001余数为正 0.0001 1 -q2=l左移 0.001 1 0+T y补 1.00001余数为负1.001 1 1 f q3=0左移 0.01 1 1 0+|y|补 0.1 1 1 1 1余数为负 1.01 1 01 -*q4=0左移 0.1 1 01 0+|y|补 0.1 1 1 1 1余数为负1.1 1 001 f q5=0+|y|补 0.1 1 1 1 1余数 0.1 1 000故 x+y 原=L H O O O 即 x+y=-0.1 1 000B余数为 0.1 1 000B X 2-1 019.设阶为5位(包括2位阶符),尾数为8位(包括2位数符),阶码、尾数均用补码表示,完成下列取值的 X+Y ,X-Y 运算:(1)X=2 0 1 1X 0.1 001 01 Y=2 0 10X (-0.01 1 1 1 0)(2)X=21 0 1X (-0.01 01 1 0)Y=21 00 X (0.01 01 1 0)解:(1)将 y 规格化得:y 01 1X(-0.1 1 1 1 00)x 浮=1 1 01,00.1 001 01 y浮=1 1 01,1 1.0001 00 -y浮=1 1 01,00.1 1 1 1 00对阶 A E 补。E x 补+E y补=H0 1+001 1=0000E x=E y尾数相加相加00.1 001 01+1 1.0001 00相减00.1 001 01+00.1 1 1 1 001 1.1 01 00101.1 00001 x+y浮=1 1 01,1 1.1 01 001 左 规 x+y浮=1 1 00,n.01 001 0:.x+y=2-1 00 X (-0.1 01 1 1 0)x-y浮=1 1 01,01.1 00001 右 规 x-y浮=1 1 1 0,00.1 1 00001舍入处理得 x-y浮=1 1 1 0,00.1 1 0001 x-y=2-1 0 X 0.1 1 0001(2)x 浮=1 01 1,1 1.1 01 01 0 y浮=1 1 00,00.01 01 1 0 -y浮=1 1 00,1 1.1 01 01 0对阶 A E 补=E x 补+-E y补=1 01 1+01 00=1 1 H;A E=-1 x 浮=1 1 00,1 1.1 1 01 01(0)尾数相加相加1 1.1 1 01 01(0)+00.01 01 1 0相减1 1.1 1 01 01(0)+1 1.1 01 01 000.001 01 1(0)x+y浮=1 1 00,00.001 01 1(0)=1 01 0,00.1 01 1 000 x+y=2 n oX O.1 01 I B x-y浮=1 1 00,1 1.OHH 1(0):.x-y=2-1 0 X (-0.1 00001 B)1 1.01 1 1 1 1(0)左 规 x+y浮1 3.某加法器进位链小组信号为C4 c3c2 C1 ,低位来的信号为CO ,请分别按下述两种方式写出C4 C3C2 C1 的逻辑表达式。(1)串行进位方式(2)并行进位方式解:(1)串行进位方式:+B l ,Cl =G 1P 1CO其中:G 1=AlP l=Al B lC2 =G 2P 2ClG 2=A2B 2 ,P 2=A2 B 2C3=G 3P 3 C2G 3=A3P 3=A3 B 3C4 =G 4P 4C3G 4=A4P 4=A4 B 4+B 3,B 4 ,(2)并行进位方式:Cl =G 1+P lCO+C2G 2+P 2G 1P 2P lCOC3=G 3+P 3 G 2+P 3 P 2G 1 +P 3 P 2 P l COC4 =G 4+P 4G 3+P 4P 3 G 2 +P 4 P 3 P 2 G 1 +P 4 P 3 P 2P l CO其 中 G 1-G 4 ,P 1-P 4 表达式与串行进位方式相同。1 4.某机字长1 6位,使用四片74 1 81 组成AL U,设最低位序标注为0位,要求:(1)写出第5 位的进位信号C6的逻辑表达式;(2)估算产生C6所需的最长时间;(3)估算最长的求和时间。解:(1)组成最低四位的74 1 81 进位输出为:C4=G+P CO ,CO 为向第0 位的进位其中:G=y3+x 3y2+x 2 x 3yl+x l x 2 x 3y0,P=x O x 1 x 2 x 3所 以:C5=y4+x 4 C4C6=y5+x 5C5=y5+x 5y4+x 5x 4 C4(2)设标准门延迟时间为T,与或非”门延迟时间为L 5 T,则进位信号C O 由最低位传送至C6需经一个反相器,两级”与或非门,故产生C6的最长延迟时间为:T+2 X 1.5T=4 T(3)最长求和时间应从施加操作数到AL U 算起:第一片74 1 81有 3 级与或非门(产生控制参数x O,yO Cn+4),第二、第三片74 1 81共 2级反相器和2 级与或非门(进位链),第四片74 1 81 求和逻辑(1 级与或非门和1 级半加器,其延迟时间为3T),故总的加法时间为:T=3X 1.5T+2 T+2 X 1.5T+1.5T+1.5T+3T=1 4 T1 7.设 A,B,C 是三个1 6位的通用寄存器,请设计一个1 6位定点补码运算器,能实现下述功能:(1)AB-*A(2)B X C-A,C(高位积在寄存器A 中)(3)A+B-C (商在寄存器C 中)解:设计能完成加、减、乘、除运算的1 6位定点补码运算器框图。分析各寄存器作用:加 减 乘除A 被加数f和数同左初始为0被除数f余部分积一乘积(H)除数B 加数同左 被乘数C乘数一乘积(L)商,A:累加器(1 6位),具有输入、输出、累加功能及双向移位功能;B:数据寄存器(1 6位),具有输入、输出功能;C:乘商寄存器(1 6位),具有输入、输出功能及双向移位功能。画出框图:第三章1.有一个具有2 0位地址和32 位字长的存储器,问:(1)该存储器能存储多少个字节的信息?(2)如果存储器由51 2 K x 8 位 S R A M 芯片组成,需要多少芯片?(3)需要多少位地址作芯片选择?解:(1)V 220=1 M,该存储器能存储的信息为:1 M X3 2/8=4 M B(2)(1 0 0 0/5 1 2)X(3 2/8)=8 (片)(3)需要1 位地址作为芯片选择。2.已知某6 4 位机主存采用半导体存储器,其地址码为26 位,若使用 25 6 K X1 6 位的D R A M 芯片组成该机所允许的最大主存空间,并选用模块板结构形式,问:(1)每个模块板为1 0 24 K x 6 4 位,共需几个模块板?(2)个模块板内共有多少D R A M 芯片?(3)主存共需多少D R A M 芯片?C P U 如何选择各模块板?解:(1).共需模块板数为m:1 n=2 2 6 +2 2 0=6 4 (块)(2).每个模块板内有D R A M 芯片数为n:n=(22 0/218)x (6 4/1 6)=1 6 (片)(3)主存共需D R A M 芯片为:1 6 X6 4=1 0 24 (片)每个模块板有1 6 片D R A M 芯片,容量为1 0 24 K x 6 4 位 需20 根地址线(A 1 9 A 0)完成模块板内存储单元寻址。一共有6 4 块模块板,采用6 根高位地址线(A 25 A 20),通过6:6 4 译码器译码产生片选信号对各模块板进行选择。3.用 1 6 K x 8 位的D R A M 芯片组成6 4 K X3 2位存储器,要求:(1)画出该存储器的组成逻辑框图。设存储器读/写周期为0.5 L i S,C P U 在 1 1 1 S 内至少要访问一次。试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?解:(1)组成6 4 K x 3 2位存储器需存储芯片数为N=(6 4 K/1 6 K)X(3 2 位/8 位)=1 6 (片)每4 片组成1 6 K X3 2位的存储区,有A 1 3-A 0 作为片内地址,用 A l 5 A 1 4 经 2:4 译码器产生片选信号西-西,逻辑框图如下所示:(2)依题意,采用异步刷新方式较合理,可满足CPU在In S内至少访问内存一次的要求。设16Kx8位存储芯片的阵列结构为128行X 128歹!按行刷新,刷新周期T=2ms,则异步刷新的间隔时间为:=生=15.5(以$)128则两次刷新的最大时间间隔发生的示意图如下REF|IREFI IREF 15.5WS 玉 15.5WS-0 可见,两次刷新的最大时间间隔为t m a xt m a x=15.5-0.5=15(u S)对全部存储单元刷新一遍所需时间为t Rt R=0.5X128=64(uS)7.某机器中,已知配有一个地址空间为0000H-3FFFH的ROM区域。现在再用一个RAM芯片(8KX 8)形成40K义16位的RAM区域,起始地址为6 0 0 0 H,假定R A M 芯片有函和丽信号控制端。C P U 的地址总线为A 1 5-A 0,数据总线为D 1 5-D O,控制信号为R/谛(读/写),额 瓯(访存),要求:(1)画出地址译码方案。(2)将 R O M 与 R A M 同C P U 连接。解:(1)依题意,主存地址空间分布如右图所示,可选用2 片27 1 28 (1 6 K X8 位)的 E P R O M 作为R O M 区;1 0 片的8 K X8 位 R A M 片组成4 0 K x i 6 位的R A M 区。27 1 28 需1 4 位片内地址,而 R A M 需 1 3 位片内地址,故可用A 1 5-A 1 3 三位高地址经译码产生片选信号,方案如下:00。叫 1 6 K x i6 位3FFFH ROM4000H 8 K x i 6 位5FFFH|由空.6000H 4 0 K x i 6 位FFFFH 及同MREQCSA15A14A13(2)D)5 _L 8 L 7-L0w(见宙)丫 7u用 一 6 D7-D o D1S-D s8.存储器容量为64M,字长64位,模块数m =8,分别用顺序方式和交叉方式进行组织。存储周期T=100ns,数据总线宽度为64位,总线周期T=10ns.问顺序存储器和交叉存储器的带宽各是多少?解:信息总量:q=64位 X8=512位顺序存储器和交叉存储器读出8 个字的时间分别是:t2=m T=8X 100ns=8X 10-7(s)tl=T+(m-I)1=100+7X10=1.7 X10-7(s)顺序存储器带宽是:W 2=q/t2=5124-(8X10-7)=64 X107(位/S)交叉存储器带宽是:W 1=q/tl=5124-(1.7 X1Q-7)=301 X 107(位/S)9.CPU执行一段程序时,cache完成存取的次数为2420次,主存完成存取的次数为80次,已知cache存储周期为40ns,主存存储周期为240ns,求 cache/主存系统的效率和平均访问时间。解:先求命中率hh=nc/(nc+nm)=24204-(2420+80)=0.968则平均访问时间为tata=0.968X40+(1-0.968)X240=46.4(ns)r=2404-40=6cache/主存系统的效率为ee=l/r+(1-r)X0.968=86.2%10.已知Cache存储周期40ns,主存存储周期200ns,Cache/主存系统平均访问时间为5 0 n s,求 Cache的命中率是多少?解::ta=tcX h+tr X(1-h):.h=(ta-tr)/(tc-tr)=(50-200)/(40-200)=15/16=0.9411.主存容量为4MB,虚存容量为1GB,则虚存地址和物理地址各为多少位?如页面大小为4KB,则页表长度是多少?解:已知主存容量为4MB,虚存容量为1GBV 22 2=4 M,物理地址为2 2 位又:2S O=1G,虚拟地址为30 位页表长度为 1 G B+4K B=2 30 +2 1 2=2 1 8=2 56K1 4.假设主存只有a,b,c 三个页框,组成a 进 c出的F I F O队列,进程访问页面的序列是0,1,2.4,2,3,0,2,1.3,2 号。用列表法求采用L R U 替换策略时的命中率。解:页面访问序列01242302132LRUA01242302132B0124230213C011423021命中命中命中.命中率为3n=27.3%111 5.从下列有关存储器的描述中,选择出正确的答案:A.多体交叉存储主要解决扩充容量问题;B.访问存储器的请求是由C PU 发出的;C.C a c h e 与主存统一编址,即主存空间的某一部分属于C a c h e;D.C a c h e 的功能全由硬件实现。解:D1 6.从下列有关存储器的描述中,选择出正确的答案:A.在虚拟存储器中,外存和主存一相同的方式工作,因此允许程序员用比主存空间大得多的外存空间编程;B.在虚拟存储器中,逻辑地址转换成物理地址是由硬件实现的,仅在页面失效时才由操作系统将被访问页面从外存调到内存,必要时还要先把被淘汰的页面内容写入外存;C.存储保护的目的是:在多用户环境中,既要防止一个用户程序出错而破坏系统软件或其他用户程序,又要防止一个用户访问不是分配给他的主存区,以达到数据安全和保密的要求。解:C第四章1.A S C I I 码是7 位,如果设计主存单元字长为32 位,指令字长为1 2位,是否合理?为什么?解:指令字长设计为1 2 位不是很合理。主存单元字长为32 位,一个存储单元可存放4个A S C I I码,余 下4位可作为A S C I I码的校验位(每个A S C I I码带一位校验位),这样设计还是合理的。但是,设计指令字长为1 2位就不合理了,1 2位的指令码存放在字 长32位的主存单元中,造 成1 9位不能用而浪费了存储空间。2 .假设某计算机指令长度为2 0位,具有双操作数、单操作数、无操作数三类指令形式,每个操作数地址规定用6位表示。问:若操作码字段固定为8位,现已设计出m条双操作数指令,n条无操作数指令,在此情况下,这台计算机最多可以设计出多少条单操作数指令?解:这台计算机最多可以设计出2 5 6-m-n条单操作数指令3 .指令格式结构如下所示,试分析指令格式及寻址方式特点。15 10 7 4 3 0OP目标寄存器源寄存器解:指令格式及寻址方式特点如下:单字长二地址指令;操作码0 P可指定2任6 4条指令;R R型指令,两个操作数均在寄存器中,源和目标都是通用寄存 器(可分别指定1 6个寄存器之一);这种指令格式常用于算术逻辑类指令。4.指令格式结构如下所示,试分析指令格式及寻址方式特点。15 10 7 4 3 0OP源寄存器变址寄存器偏 彳 修量(16位)解:指令格式及寻址方式特点如下:双字长二地址指令;操作码0 P可指定2吐6 4条指令;R S型指令,两个操作数一个在寄存器中(1 6个寄存器之一),另一个在存储器中;有效地址通过变址求得:E=(变址寄存器)土 D,变址寄存器可有1 6个。5.指令格式结构如下所示,试分析指令格式及寻址方式特点。15 12 11 9 8 6 5 3 2 0OP寻址方式|寄存器寻址方式|寄存器L 源地址 目的地址_解:指令格式及寻址方式特点如下:单字长二地址指令;操作码0 P可指定2 4=1 6条指令;有 8 个通用寄存器,支持8 种寻址方式;可以是R R 型指令、S S 型指令、R S 型指令、6 .一种单地址指令格式如下所示,其中I 为间接特征,X为寻址模式,D为形式地址。I,X,D组成该指令的操作数有效地址E。设 R为变址寄存器,R 1 为基值寄存器,P C 为程序计数器,请在下表中第一列位置填入适当的寻址方式名称。OPIXD寻址方式名称1X盯效地址E31L)031IU11on01E-DE 1P O +D汁DE=(R:+DE=R 1S U B R 4,R I,R 5;R 1-R 5-*R 4两条指令在流水线中执行情况如下表所示:、时钟才 怜、1234567ADDIFIDEXW BSUBIFIDEXW B不采取措施IFIDEXW B采取措施IFIDEXW BA D D 指令在时钟4 时才将结果写入寄存器R 1中,但 S U B 指令在时钟3时就需读寄存器R I T,显然发生数据相关,不能读到所需数据,只能等待。如果硬件上不采取措施,第2条指令S U B至少应推迟2个操作时钟周期,即t=2X100ns=200ns;(3)如果硬件上加以改进(采取旁路技术),这样只需推迟1个操作时钟周期就能得到所需数据,即 t=100ns o15.用定量描述法证明流水计算机比非流水计算机具有更高的吞吐率。解:衡量并行处理器性能的一个有效参数是数据带宽(最大吞吐量),它定义为单位时间内可以产生的最大运算结果个数。设P 1是有总延时T 1的非流水处理器,故其带宽为1/T l o又设P m是相当于P l m段流水处理器延迟时 间T r,故P m的带宽为1/(T c+T r)o如果P m是将P l划分成相同延迟的若干段形成的,则T l m T c 因此P 1的带宽接近于1/m T c,由此可见,当m T c T c+T r满足时,P m比P l具有更大的带宽。1 6.流水线中有三类数据相关冲突:写后读(R A W)娥;堪后写(W A R)相关;写后写(W A W)相关。判断以下三组指令各存在哪种类型的数据相关。(1)I l L A D R I,A ;M (A)-R I,M (A)是存储器单元12 A D D R 2,R I ;(R 2)+(R I)f R 2(2)13 A D D R 3,R 4;(R 3)+(R 4)-R 314 M U L R 4,R 5;(R 4)X (R 5)-R 4(3)15 L A D R 6,B ;M (B)-R 6,M (B)是存储器单元16 M U L R 6,R 7;(R 6)X (R 7)-R 6解:(1)写后读(R A W)相关;(2)读后写(W A R)相关,但不会引起相关冲突;(3)写后读(R A W)相关、写后写(W A W)相关1 7.参考教科书图5.42所示的超标量流水线结构模型,现有如下6条指令序列:I l L A D R I,B;M(B)-R I,M(B)是存储器单元12 S U B R 2,R I;(R 2)-(R I)-R 213 M U L R 3,R 4;(R 3)X (R 4)f R 314 A D D R 4,R 5;(R 4)+(R 5)-*R 415 L A D R 6,A;M(A)-R 6,M(A)是存储器单元16 A D D R 6,R 7;(R 6)+(R 7)-*R 6请画出:(1)按序发射按序完成各段推进情况图。(2)按序发射按序完成的流水线时空图。解:译码段执行段写回段0T忤 中111221211313141211415161214135161514131261516 1413715161314816159161012345678910时钟11FDEW12FDEEW13FDEEEW14FDEEW15FDEW16FDEEW1第六章1.比较单总线、双总线、三总线结构的性能特点。3.用异步通信方式传送字符A 和 8 ,数据有7 位,偶校验1位。起始位1 位,停止位1 位,请分别画出波形图。解:字符 A 的 ASCII 码为 41H=1000001B;字符 8 的 ASCII 码为 38HR111000B;串行传送波形图为:B1 0 0 0 0 0 1 CSB0 0 0 1 1 1 o c k 空闲。I I I I I I I I I I IH-A”-”8”-H注:B:起始位C:校验位S:停止位8.同步通信之所以比异步通信具有较高的传输频率,是因为同步通信A.不需要应答信号;B.总线长度较短;C.用一个公共时钟信号进行同步;D.各部件存取时间比较接近。解:C9 .在集中式总线仲裁中,方式响应时间最快,方式对最敏感。A.菊花链方式B.独立请求方式C.电路故障D.计数器定时查询方式解:B A C1 0 .采月串行接口进行7 位 A S C I I 码传送,带有1 位奇校验位,1 位起始位和1 位停止位,当传输率为9 60 0 波特时,字符传送速率为oA.9 60 B.8 7 3.C.1 3 7 2 D.4 8 0解:A1 1 .系统总线中地址线的功能是 OA.选择主存单元地址B.选择进行信息传输的设备C.选择外存地址D.指定主存和I/O 设备接口电路的地址解:D1 2.系统总线中控制器的功能是 oA.提供主存、I/O 接口设备的控制信号和响应信号B.提供数据信息C.提供时序信号D.提供主存、I/O接口设备的响应信号解:D14.PCI是 一 个 与 处 理 器 无 关 的,它采用时序协议和式仲裁策略,并具有能力。A.集 中 B.自动配置C.同步D.高速外围总线解:D C A B15.PCI总线的基本传输机制是传送。利用可以实现总线间的传送,使所有的存取都按CPU的需要出现在总线上。PCI允许 总 线 工作。A.桥 B.猝发式C.并 行 D.多 条 E.猝发式解:B A C D E17.PCI总线中三种桥的名称是什么?桥的功能是什么?解:PCI总线有三种桥,即HOST/PCI桥(简称HOST桥),PCI/PCI桥和 PCI/LAGACY 桥。在 PCI总线体系结构中,桥起着重要作用:(1)接两条总线,使总线间相互通信;(2)是一个总线转换部件,可以把一条总线的地址空间映射到另一条总线的地址空间上,从而使系统中任意一个总线主设备都能看到同样的一份地址表。(3)利用桥可以实现总线间的卒发式传送。1 9 .总线的一次信息传送过程大致分哪几个阶段?若采用同步定时协议,请画出读数据的同步时序图。解:分五个阶段:请求总线、总线仲裁、寻 址(目的地址)、信息传送、状态 返 回(错误报告)。读数据的同步时序图为:总线时钟 _ T L rm jr启动信号一I I-读命令1-地址线(地址8-数据线-认可-1 I-2 0.某总线在一个总线周期中并行传送8个字节的数据,假设一个总线周期等于一个总线时钟周期,总线时钟频率为7 0M H Z ,求总线带宽是多少?解:设总线带宽用Dr表示,总线时钟周期用T=1/f表示,一个总线周期传送的数据量用D 表示,根据定义可得:D r=T/D =D X l/f =8BX70X106/s=560MB/第七章1.计算机的外围设备是指()A.输入/输出设备 B.外存储器C.输入/输出设备及外存储器 D.除了 CPU和内存以外的其他设备解:D2.打印机根据印字方式可以分为()和()两大类,在()类打印机中,只 有()型打印机能打印汉字,请从下面答案中选择填空。A.针型打印机B.活字型打印机C.击打式 D.非击打式解:C D C A7.试推导磁盘存贮器读写一块信息所需总时间的公式。解:设读写一块信息所需总时间为T b,平均找道时间为T s,平均等待时间为T L,读写一块信息的传输时间为T m,贝!J:T b=T s+T L+T mo假设磁盘以每秒r转速率旋转,每条磁道容量为N个字,则数据传输率=r N 个字/秒。又假设每块的字数为n,因而一旦读写头定位在该块始端,就能在T m-(n /r N)秒的时间中传输完毕。T L 是磁盘旋转半周的时间,T L=(l/2 r)秒,由此可得:T b=T s +l/2 r+n/r N 秒8.某磁盘存贮器转速为3 000转/分,共有4 个记录面,每毫米5道,每道记录信息为1 2 2 8 8 字节,最小磁道直径为2 3 0m m,共有2 7 5道。问:(1)磁盘存贮器的容量是多少?(2)最高位密度与最低位密度是多少?(3)磁盘数据传输率是多少?(4)平均等待时间是多少?(5)给出一个磁盘地址格式方案。解:(1)每道记录信息容量=1 2 2 8 8 字节每个记录面信息容量=2 7 5 X 1 2 2 8 8 字节共有4 个记录面,所以磁盘存储器总容量为:4 X 2 7 5 X 1 2 2 8 8 字 节=1 3 5 1 6 8 00 字节(2)最高位密度D 1 按最小磁道半径R 1 计 算(R I =1 1 5 m m):D 1 =1 2 2 8 8 字节/2 n R 1 =1 7 字节/m m最低位密度D 2 按最大磁道半径R 2 计算:R 2 =R 1 +(2 7 5 4-5)=1 1 5 +5 5 =1 7 0m mD 2 =1 2 2 8 8 字节/2 n R 2 =1 1.5 字节/m m(3)磁盘传输率C =r Nr =3 000/6 0=5 0 周/秒N =1 2 2 8 8 字节(信道信息容量)C =r N =5 0 X 1 2 2 8 8 =6 1 4 4 00 字节/秒(4)平均等