计算机组成原理白中英版第五版课后答案课件_第1页
计算机组成原理白中英版第五版课后答案课件_第2页
计算机组成原理白中英版第五版课后答案课件_第3页
计算机组成原理白中英版第五版课后答案课件_第4页
计算机组成原理白中英版第五版课后答案课件_第5页
已阅读5页,还剩129页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章计算机系统概论第1章计算机系统概论4.冯诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分?冯诺依曼计算机的主要设计思想存储程序并按地址顺序执行冯诺依曼计算机主要包括存储器、运算器、控制器、输入和输出五部分组成11/14/202224.冯诺依曼型计算机的主要设计思想是什么?它包括哪些主要5.什么是存储容量?什么是单元地址?

什么是数据字?什么是指令字?存储容量存储器所能保存二进制数据的总数;常用单位为KB、MB等。单元地址用于识别存储器中每个存储单元的编号,即单元地址。数据字表示计算机所要处理数据的计算机字,称为数据字。指令字表示一条指令的计算机字,称为指令字。11/14/202235.什么是存储容量?什么是单元地址?

什么是数据字?什么6.什么是指令?什么是程序?指令由操作码和操作数两部分构成能够表示计算机中的一个基本操作的代码或二进制串。程序用于求解某一问题的一串指令序列,称为该问题的计算程序,简称为程序。11/14/202246.什么是指令?什么是程序?指令11/12/202247.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?计算机对指令和数据的区分是依靠指令的执行阶段来决定的;在取指阶段,从存储器中读取的均是CPU要执行的指令;在执行阶段,从存储器中读取的一定是指令执行所需要的操作数;11/14/202257.指令和数据均存放在内存中,计算机如何区分它们是指令还8.什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能。内存:用于存放系统当前运行所需要的程序和数据的半导体存储器,称为内存储器,简称内存;外存用于存放程序和数据,但不能被CPU直接访问的大容量存储器,称为外存储器,简称为外存;外存一般包括磁盘存储器和光盘存储器。CPU运算器和控制器合称为中央处理器,简称CPU。适配器主机和不同速度的外设之间的一种部件,用于主机和外设之间的信息转换。11/14/202268.什么是内存?什么是外存?什么是CPU?什么是适配器?第2章运算方法和运算器第2章运算方法和运算器1.用8位编码表示下列各整数的原码、反码、补码。真值原码反码补码-35-0100011101000111101110011011101127+1111111011111110111111101111111-127-1111111111111111000000010000001-1-000000110000001111111101111111111/14/202281.用8位编码表示下列各整数的原码、反码、补码。真值原码若a7=0,则X为正数,显然a0···a6取任何值均可。若a7=1,则X为负数,[X]移=0.a6

a5

···

a0∵-0.5D=-0.100000B,则[-0.5D]移=0.100000∴若要X>-0.5,即等价于[X]移>[-0.5D]移 即0.a6

a5···a0>0.100000,因此必须是a5···a0不全为0。结论:如果a7=0,a6···a0取任何值均可;如果a7=1,必须满足a6=1且a5···a0不全为0。2.设[X]补=a7.a6a5···a0,其中ai取0或1,

若要X>-0.5,求a0a1a2···

a7的取值。11/14/20229若a7=0,则X为正数,显然a0···a6取任何值均可。3.有一个字长为32位的浮点数,符号位1位;阶码8位,用移码表示;尾数23位,用补码表示;基数为2。请写出:(1)最大数的二进制表示,(2)最小数的二进制表示,(3)规格化数所能表示的数的范围。设移码采用移128码,且机器数格式如右:最大值(最大正数)01111111111111111111111111111111即x=(1-2-23)*2127

二进制表示:x=(1-0.00000000000000000000001)*21111111

最小值(最小负数)11111111100000000000000000000000即x=-1*2127二进制表示:x=-1*21111111

符号位S(1位)阶码E(8位)尾数M(23位)11/14/2022103.有一个字长为32位的浮点数,符号位1位;阶码8位,用移3.有一个字长为32位的浮点数,符号位1位;阶码8位,用移码表示;尾数23位,用补码表示;基数为2。请写出:(1)最大数的二进制表示,(2)最小数的二进制表示,(3)规格化数所能表示的数的范围。设移码采用移128码,且机器数格式如右:规格化数表示范围最大正数:01111111111111111111111111111111即x=(1-2-23)*2127最小正数:00000000010000000000000000000000即x=2-1*2-128最大负数:10000000001111111111111111111111即x=-(2-1+2-23)*2-128最小负数:11111111100000000000000000000000即x=-1*2127规格化的正数范围2-129~(1-2-23)*2127 负数范围-2127~-(2-1+2-23)*2-128符号位S(1位)阶码E(8位)尾数M(23位)11/14/2022113.有一个字长为32位的浮点数,符号位1位;阶码8位,用移4、将下列十进制数表示成IEEE754标准的32位浮点规格化数。27/6427/64=0.011011B=1.1011*2-2e=-2,则E=e+127=125∴规格化数-27/64-27/64=-0.011011B=-1.1011*2-2

∴规格化数符号位阶码(8)尾数(23)00111110110110000000000000000000符号位阶码(8)尾数(23)1011111011011000000000000000000011/14/2022124、将下列十进制数表示成IEEE754标准的32位浮点规格化+[y]补00.000115、已知x和y,用变形补码计算x+y,同时指出结果是否溢出。x=0.11011y=0.00011[x]补=00.11011,[y]补=00.00011∴[x+y]补=00.11110,未溢出x+y=+0.11110[x]补00.1101100.1111011/14/202213+[y]补00.000115、已知x和y,x=0.11011y=-0.10101[x]补=00.11011,[y]补=11.01011∴[x+y]补=00.00110,未溢出x+y=+0.00110+[y]补

11.010115、已知x和y,用变形补码计算x+y,同时指出结果是否溢出。[x]补

00.1101100.0011011/14/202214x=0.11011y=-0.10101+[y]补x=-0.10110y=-0.00001[x]补=11.01010,[y]补=11.11111∴[x+y]补=11.01001,未溢出x+y=-0.10111+[y]补

11.111115、已知x和y,用变形补码计算x+y,同时指出结果是否溢出。[x]补

11.0101011.0100111/14/202215x=-0.10110y=-0.00001+[y]6、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。x=0.11011y=-0.11111[x]补=00.11011,[-y]补=00.11111∴x-y溢出(上溢)[x]补

00.11011+[-

y]补

00.1111101.1101011/14/2022166、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。6、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。x=0.10111y=0.11011[x]补=00.10111,[-y]补=11.00101∴[x-y]补=11.11100,未溢出x-y=-0.00100[x]补

00.10111+[-

y]补

11.0010111.1110011/14/2022176、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。6、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。x=0.11011y=-0.10011[x]补=00.11011,[-y]补=00.10011∴[x-y]补溢出(上溢)[x]补

00.11011+[-

y]补

00.1001101.0111011/14/2022186、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。7、用原码阵列乘法器计算x×y。x=11011y=-11111机器内部补码数据:

[x]补=011011[y]补=100001符号位单独运算:0⊕1=1算前求补器输出:

|x|=11011|y|=11111乘法阵列: |x|×|y|=1101000101算后求补器输出:[x×y]补=10010111011

∴x×y=-110100010111011110111101111011110111101000101×111111101111/14/2022197、用原码阵列乘法器计算x×y。x=11011y=-7、用原码阵列乘法器计算x×y。x=-11111y=-11011机器内部补码数据:[x]补=100001[y]补=100101符号位单独考虑:1⊕1=0算前求补器输出:|x|=11111|y|=11011乘法阵列: |x|×|y|=1101000101算后求补输出:[x×y]补=01101000101

∴x×y=0110100010111111111110000011111111111101000101×110111111111/14/2022207、用原码阵列乘法器计算x×y。x=-11111y=-19-1、x=2-011×0.100101,y=2-010×(-0.011110),求[x+y]设尾数阶码均使用双符号位的补码表示[x]浮=11101,00.100101[y]浮=11110,11.1000101)求阶差并对阶

△E=Ex-Ey=[Ex]补+[-Ey]补=11101+00010=11111 修改后的x表示为:[x]浮=11110,0.010010(1)2)尾数求和MS=Mx+My=11.110100(1)3)规格化处理执行2次左规处理,MS=11.010010(0),ES=111004)舍入处理

5)判溢出故得最终结果为x+y=2-100×(-0.101110)00.010010+11.10001011.110100采用0舍1入法处理,则舍去0阶码符号位为11,不溢出11/14/2022219-1、x=2-011×0.100101,y=2-010×(9-1、x=2-011×0.100101,y=2-010×(-0.011110),求[x-y]设尾数阶码均使用双符号位的补码表示[x]浮=11101,00.100101[y]浮=11110,11.1000101)求阶差并对阶

△E=Ex-Ey=[Ex]补+[-Ey]补=11101+00010=11111

修改后的x表示为:[x]浮=11110,0.010010(1)2)尾数求差MS=Mx-My=00.110000(1)3)规格化处理4)舍入处理

5)判溢出故得最终结果为x+y=2-010×0.11000100.010010+00.01111000.110000采用0舍1入法处理,则进位,MS=00.110001阶码符号位为11,不溢出[-My]补[Mx]补不需规格化11/14/2022229-1、x=2-011×0.100101,y=2-010×(9-2、x=2-101×(-0.010110)、y=2-100×0.010110,求[x+y]设尾数阶码均使用双符号位的补码表示[x]浮=11011,11.101010[y]浮=11100,00.0101101)求阶差并对阶△E=Ex-Ey=[Ex]补+[-Ey]补=11011+00100=11111即△E为-1,x的阶码小,应使Mx右移1位,Ex加1,[x]浮=11100,1.110101(0)2)尾数求和MS=Mx+My=00.001011(0)3)规格化处理执行2次左规处理,MS=00.101000(0),ES=110104)舍入处理

5)判溢出故得最终结果为x+y=2-110×(0.101100)11.110101(0)+00.01011000.001011(0)采用0舍1入法处理,则舍去0阶码符号位为11,不溢出11/14/2022239-2、x=2-101×(-0.010110)、y=2-109-2、x=2-101×(-0.010110)y=2-100×0.010110,求[x-y]设尾数阶码均使用双符号位的补码表示

[x]浮=11011,11.101010[y]浮=11100,00.0101101)求阶差并对阶△E=Ex-Ey=[Ex]补+[-Ey]补=11011+00100=11111即△E为-1,x的阶码小,应使Mx右移1位,Ex加1,[x]浮=11100,1.110101(0)2)尾数求差MS=Mx-My=11.011111(0)3)规格化处理4)舍入处理

5)判溢出故得最终结果为x+y=2-100×(-0.100001)11.110101+11.10101011.011111[-My]补[Mx]补采用0舍1入法处理,则舍去0阶码符号位为11,不溢出不需规格化11/14/2022249-2、x=2-101×(-0.010110)y=2第3章内部存储器第3章内部存储器1、设有一个具有20位地址和32位字长的存储器,问:该存储器能存储多少字节的信息?存储容量=存储单元个数×每单元字节数 =220×32bit如果存储器有512K×8位SRAM芯片组成,需要多少片?需要做存储芯片的字位扩展;位扩展:4片512K×8位芯片构成512K×32位的存储组;字扩展:2组512K×32位存储组构成1M×32位的存储器;因此,共需要2×4=8片给定的SRAM芯片需要多少位地址做芯片选择?字扩展的是2个存储组,因此,需1位地址做片选。11/14/2022261、设有一个具有20位地址和32位字长的存储器,问:该存储器由16K×8位的芯片字位扩展构成64K×32位的存储器;位扩展:由4片16K×8位的芯片构成16K×32位的存储组;字扩展:由4组16K×32位存储组构成16K×32位的存储器;因此,4个存储组的片选信号应由最高两位地址A14和A15产生;该存储器的组成逻辑框图如下:3、用16K×8位的DRAM芯片构成64K×32位存储器,问:

(1)画出该存储器的组成逻辑框图。2:4译码器A14A15CS3CS2CS0CS1A13~A0D0~D7/WE11/14/202227由16K×8位的芯片字位扩展构成64K×32位的存储器;3、位扩展16K×8RAMA13~A0D7~D0/WE/CS16K×8RAMA13~A0D7~D0/WE/CSA13~A0D7~D0D15~D816K×8RAMA13~A0D7~D0/CS/WE16K×8RAMA13~A0D7~D0/CS/WED23~D16D31~D23/CS/WE11/14/202228位扩展16K×8A13~A0D7~D0/WE/CS16K×8字扩展16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/CS/WE/WEA13~A0D31~D074LS139/G1BA/Y0/Y1/Y2/Y3/MREQA14A1511/14/202229字扩展16K×32A13~A0D31~D0/WE/CS16K3、用16K×8的DRAM芯片构成64K×32位存储器,要求:

(2)设储器读/写周期为0.5μs,CPU在1μs内至少要访问一次。试问采用哪种方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?假定16K×8位的DRAM芯片的存储矩阵是128行×(128×8)列;若集中刷新,则有128行×0.5us=64us的死时间,不合适;若分散刷新,则每访存一次需要1us,也不合适;所以,应采用异步式刷新方式。假定DRAM芯片的刷新周期为2ms两行的刷新间隔为:2ms/128=0.015625ms=15.625us若取15.5us作为实际的刷新间隔刷新存储体一遍实际所用时间为:15.5us×128=1984us=1.984ms11/14/2022303、用16K×8的DRAM芯片构成64K×32位存储器,要求6、用32K×8位的EPROM芯片组成128K×16位的只读存储器,试问:数据寄存器多少位?因为系统数据总线为16位,所以数据寄存器16位地址寄存器多少位?因为存储器容量为128K,需系统地址总线17位,所以地址寄存器17位共需多少个EPROM芯片?所需芯片总数:(128K/32K)×(16/8)=8片11/14/2022316、用32K×8位的EPROM芯片组成128K×16位的只读6、用32K×8位的EPROM芯片组成128K×16位的只读存储器,试问:(4)画出此存储器的组成框图。CPU地址寄存器数据寄存器32K×832K×832K×832K×832K×832K×832K×832K×8CS3CS2CS1CS02:4译码器CS0~CS3A16A1511/14/2022326、用32K×8位的EPROM芯片组成128K×16位的只读8、设存储器容量为64M,字长为64位,模块数m=8,分别用顺序和交叉方式进行组织。存储周期T=100ns,数据总线宽度为64位,总线传送周期τ=50ns。求:顺序存储器和交叉存储器的带宽各是多少?顺序存储器和交叉存储器连续读出m=8个字的数据信息量为: q=8×64=512位顺序存储器所需要的时间为 t1=m×T=8×100ns=800ns=8×10-7s故顺序存储器的带宽为 W1=q/t1=512/(8×10-7)=64×107[bit/s]交叉存储器所需要的时间为 t2=T+(m-1)×τ=100ns+(8-1)×50ns=450ns=4.5×10-7s故交叉存储器的带宽为 W1=q/t2=512/(4.5×10-7)=113.8×107[bit/s]11/14/2022338、设存储器容量为64M,字长为64位,模块数m=8,分别用9、CPU执行一段程序时,cache完成存取的次数为2420次,主存完成存取的次数为80次,

已知cache存储周期为40ns,主存存储周期为240ns,求cache/主存系统的效率和平均访问时间。命中率h=Nc/(Nc+Nm)=2420/(2420+80)=0.968主存与Cache的速度倍率r=tm/tc=240ns/40ns=6访问效率e=1/(r+(1-r)h)=1/(6+(1-6)×0.968)=86.2%平均访问时间ta=tc/e=40ns/0.862=46.4ns11/14/2022349、CPU执行一段程序时,cache完成存取的次数为242010、已知cache存储周期40ns,主存存储周期200ns,cache/主存系统平均访问时间为50ns,求cache的命中率是多少?由ta=htc+(1-h)tm,可得11/14/20223510、已知cache存储周期40ns,主存存储周期200ns13、一个组相联Cache由64个行组成,每组4行。主存储器包含4K个块,每块128字。请表示内存地址的格式。组相联映射下的主存地址格式如下:每块128字,假定主存以字进行组织块内的字地址需要7位Cache由64个行组成,每组4行Cache中共包含16组,需4位组号主存包含4K个块主存块号为12位主存标记位有12-4=8位主存标记组号块内地址7位4位8位11/14/20223613、一个组相联Cache由64个行组成,每组4行。主存储器14、某机主存容量1MB,字长1B,块大小16B,Cache容量64KB,若Cache采用直接映射方式,请给出2个不同标记的内存地址,它们映射到同一个Cache行。直接映射下的主存地址格式如下:每块16B 块内的字节地址需要4位Cache容量64KB 共包含4K行Cache块号12位主存容量1MB 主存地址20位 主存标记位20-12-4=4位两个满足题目要求的主存地址: 00001001000011100000 00011001000011100000主存标记Cache行号块内地址4位12位4位11/14/20223714、某机主存容量1MB,字长1B,块大小16B,Cache15、假设主存容量16M×32位,Cache容量64K×32位,主存与Cache之间以每块4×32位大小传送数据,请确定直接映射方式的有关参数,并画出主存地址格式。直接映射下的主存地址格式如下:每块4字 块内的字地址需要2位Cache容量64KB Cache共包含16K个块

Cache块号需要14位主存16MB 主存地址为24位

主存标记位有24-14-2=8位主存标记Cache行号块内地址2位14位8位11/14/20223815、假设主存容量16M×32位,Cache容量64K×32第4章指令系统第4章指令系统3、指令格式结构如下所示,试分析指令格式与寻址方式特点。单字长双地址码的RR型指令。操作码6位,系统中可以包含64种不同的指令。源、目的操作数只能采用寄存器寻址方式。OP——目标寄存器源寄存器151098743011/14/2022403、指令格式结构如下所示,试分析指令格式与寻址方式特点。单字4、指令格式结构如下所示,试分析指令格式与寻址方式特点。双字长双地址码的RS型指令。操作码6位,系统中可以包含64种不同的指令。源操作数只能使用寄存器寻址方式;

目的操作数只能使用变址寻址方式;其中,变址寄存器可使用16个通用寄存器之一;偏移量为16位。OP——源寄存器变址寄存器1510987430偏移量(16位)11/14/2022414、指令格式结构如下所示,试分析指令格式与寻址方式特点。双字6、一种单地址指令格式如下所示,R变址寄存器,R1基址寄存器,PC程序计数器,填写下列寻址方式。寻址方式IX有效地址E直接寻址000E=D相对寻址001E=(PC)+D变址寻址010E=(R)+D基址寻址011E=(R1)+D间接寻址100E=(D)基址间接寻址111E=((R1)+D)操作码OP间接特征I寻址模式X形式地址D11/14/2022426、一种单地址指令格式如下所示,R变址寄存器,R1基址寄存器7、某计算机字长为16位,主存容量为64K字,采用单字长单地址指令,共有40条指令,试采用直接、立即、变址、相对四种寻址方式设计指令格式。40条指令指令操作码需6位,26=64,其中24种编码未用;4种寻址方式寻址特征需2位;单字长单地址指令剩余8位作为形式地址;设计方案:方案1:专用变址寄存器;方案2:通用寄存器作为变址寄存器;寻址方式寻址特征X有效地址E直接寻址方式00E=D立即寻址方式01D=Imm变址寻址方式10E=(R)+D相对寻址方式11E=(PC)+D11/14/2022437、某计算机字长为16位,主存容量为64K字,采用单字长单地方案1:专用变址寄存器各操作数的寻址范围:立即数寻址方式指令中的立即数不能超过8位;直接寻址方式直接地址为8位,可直接寻址范围为28个单元;变址寻址方式E=(R)+D,其中变址寄存器R为16位;由于主存容量64K字,可直接寻址整个主存空间;相对寻址方式E=(PC)+D,可直接寻址整个主存空间;6位OP2位寻址特征8位形式地址11/14/202244方案1:专用变址寄存器各操作数的寻址范围:6位2位8位11方案2:通用寄存器作为变址寄存器各操作数的寻址范围:立即数寻址方式指令中的立即数不能超过4位;直接寻址方式直接地址为4位,可直接寻址范围为24个单元;变址寻址方式E=(R)+D,其中变址寄存器R为16位;由于主存容量64K字,可直接寻址整个主存空间;相对寻址方式E=(PC)+D,可直接寻址整个主存空间;6位OP2位寻址特征4位寄存器4位形式地址11/14/202245方案2:通用寄存器作为变址寄存器各操作数的寻址范围:6位29、某机字长为32位,CPU中有16个32位通用寄存器,设计一种能容纳64种操作的指令系统,如果采用通用寄存器作为基址寄存器,则RS型指令的最大存储空间是多少?指令格式64种操作 操作码占6位;16个通用寄存器一个操作数和基址寄存器各占4位;单字长指令 形式地址占32–6–4–4=18位;操作数S的地址E=(R1)+D,其中R1为32位的;若系统的地址总线≤32位,则可寻址整个主存;若系统的地址总线>32位,则可寻址的最大存储空间为232+218操作码OP操作数R基址寄存器R1形式地址D6位4位4位18位11/14/2022469、某机字长为32位,CPU中有16个32位通用寄存器,设计12、根据操作数所在的位置,指出其寻址方式。操作数在寄存器中,为

寻址方式;操作地址在寄存器,为

寻址方式;操作数在指令中,为

寻址方式;操作数地址(主存)在指令中,为

方式;操作数的地址为某一寄存器内容与位移量之和,可以是

寻址方式;寄存器寄存器间接立即数直接寻址相对,基址,变址11/14/20224712、根据操作数所在的位置,指出其寻址方式。操作数在寄存器中第5章

中央处理机第5章中央处理机2、参见图5.15的数据通路,画出存数指令STOR1,(R2)的指令周期流程图,其含义是将寄存器R1的内容传送至(R2)为地址的数存单元中。指令地址指令数据单元数据地址数据11/14/2022492、参见图5.15的数据通路,画出存数指令STOR1,(存数指令STOR1,(R2)(PC)AR(M)DR(DR)IR译码(R2)AR(R1)DRDRMM取指周期执行周期PC0GARiR/W=1DR0GIRiR20GARiR10GDRiR/W=011/14/202250存数指令STOR1,(R2)(PC)AR(M)DR(3、参见图5.15的数据通路,画出取数指令LAD(R3),R0的指令周期流程图,其含义是将(R3)为地址数存单元的内容取至寄存器R0中。指令地址指令数据数据地址11/14/2022513、参见图5.15的数据通路,画出取数指令LAD(R3),取数指令LAD(R3),R0的指令周期(PC)AR(M)DR(DR)IR译码(R3)ARMMDRDRR0取指周期执行周期PC0GARiR/W=1DR0GIRiR30GARiDR0GR0iR/W=111/14/202252取数指令LAD(R3),R0的指令周期(PC)AR(M)6、假设某机器有80条指令,平均每条指令有4条微指令组成,其中有一条取值微指令是所有指令公用的,已知微指令长度为32位,请估算控制存储器容量。微指令的数目为80×3+1=241条;微指令字长为32/8=4字节;故,控制存储器的容量为241×4=964字节该容量为控制存储器的最小容量。11/14/2022536、假设某机器有80条指令,平均每条指令有4条微指令组成,其8、某机有8条指令I1—I8,每条微指令所包含的微命令控制信号如下表所示。a—j分别对应10种不同性质的微命令信号。假设一条微指令的控制字段仅为8位,请安排微指令的控制字段格式。微命令数目>操作控制字段,则采用混合表示法设计微指令;从左表中选择互斥的微操作;a命令:与i互斥b命令:与f、g、i、j互斥c命令:与f、j互斥d命令:与i、j互斥e命令:与f、h、j互斥f命令:与b、c、e、h、i、j互斥g命令:与b、h、j互斥h命令:与e、f、g、i互斥i命令:与a、b、d、f、h、j互斥j命令:与b、c、d、e、f、g、i互斥互斥信号组e、f、h和b、i、je、f、h和d、i、je、f、h和b、g、ji、f、h和b、g、j微指令abcdefghijI1√√√√√I2√√√√I3√√I4√I5√√√√I6√√√I7√√√I8√√√11/14/2022548、某机有8条指令I1—I8,每条微指令所包含的微命令控制信8、某机有8条指令I1—I8,每条微指令所包含的微命令控制信号如下表所示。a—j分别对应10种不同性质的微命令信号。假设一条微指令的控制字段仅为8位,请安排微指令的控制字段格式。解法1:将(d,i,j)和(e,f,h)分别组成两个小组,进行译码,可得六个微命令信号,剩下的a,b,c,g四个微命令信号可进行直接控制,其整个控制字段组成如右图所示:解法2:将(b,i,j)和(e,f,h)分别组成两个小组,进行译码,可得六个微命令信号,剩下的a,b,c,g四个微命令信号可进行直接控制,其整个控制字段组成如右图所示:注意:00表示两位均不产生控制信号11/14/2022558、某机有8条指令I1—I8,每条微指令所包含的微命令控制信12、今有4级流水线,分别完成取指、指令译码并取数、运算、送结果四步操作。假设完成各步操作的时间依次为100ns、100ns、80ns、50ns。请问:流水线的操作周期应设计为多少?流水线的操作周期应按各步操作的最大时间来考虑,即流水线时钟周期性,故取100ns。若相邻两条指令发生数据相关,硬件上不采取措施,那么第2条指令要推迟多少时间进行?遇到数据相关时,就推迟第2条指令的执行;要推迟到所需读取的数据已产生为止,因此至少需要延迟2个时钟周期。如果再硬件设计上加以改进,至少需推迟多少时间?如采用专用通路技术,应保证取数之前结果已计算出来;因此,至少需要延迟1个时钟周期。流水时空图11/14/20225612、今有4级流水线,分别完成取指、指令译码并取数、运算、送流水时空图取指译码并取数运算送结果取指译码并取数运算送结果取指译码并取数运算送结果取指译码并取数运算送结果可能出现的数据相关11/14/202257流水时空图取指译码并取数运算送结果取指译码并取数运算送结果取13、指令流水线有取指(IF)、译码(ID)、执行(EX)、访存(MEM)、写回寄存器堆(WB)五个过程段,共有20条指令连续输入此流水线。画出流水处理的时空图,假设时钟周期为100ns。11/14/20225813、指令流水线有取指(IF)、译码(ID)、执行(EX)、13、指令流水线有取指(IF)、译码(ID)、执行(EX)、访存(MEM)、写回寄存器堆(WB)五个过程段,共有20条指令连续输入此流水线。求流水线的实际吞吐量(单位时间内执行完毕的指令条数)。求流水线的加速比。11/14/20225913、指令流水线有取指(IF)、译码(ID)、执行(EX)、16、判断以下三组指令中各存在哪种类型的数据相关?I1LDAR1,A;M(A)R1

I2ADDR2,R1;(R2)+(R1)R2I3ADDR3,R4;(R3)+(R4)R3

I4MULR4,R5;(R4)×(R5)R4I5LDAR6,B;M(B)R6

I6MULR6,R7;(R6)×(R7)R6写后读相关读后写相关写后写相关11/14/20226016、判断以下三组指令中各存在哪种类型的数据相关?I1第8章输入输出系统第8章输入输出系统1、如果认为CPU等待设备的状态信号是处于非工作状态(即踏步等待),那么在下面几种主机与设备之间的数据传送中,()主机与设备是串行工作的;()主机与设备是并行工作的;()主机程序与设备是并行运行的。A、程序查询方式B、程序中断方式C、DMA方式2、中断向量的地址是()。A、子程序入口地址B、中断服务程序入口地址C、中断服务程序入口地址指示器D、例行程序入口地址4、采用DMA方式传送数据时,每传送一个数据就要占用一个()的时间。A、指令周期B、机器周期C、存储周期D、总线周期ACBBC11/14/2022621、如果认为CPU等待设备的状态信号是处于非工作状态(即踏步(1)将表中各级中断处理程序的各中断屏蔽值如何设置?

每级对应一位,该位为0表示允许中断,为1表示中断屏蔽8、设某机器有5级中断:L0,L1,L2,L3,L4,其中断响应优先次序为:L0最高,L1次之,L4最低,现在要求将中断处理次序改为L1L3L0L4L2,试问:11/14/202263(1)将表中各级中断处理程序的各中断屏蔽值如何设置?8、设某按优先次序先调用L0,L0屏蔽了本级和低级中断请求,而L1的中断请求未屏蔽,则L1发生中断嵌套响应;L1中断时,不允许任何中断,服务完毕后,退回到L0的中断服务程序,这时,允许L3的中断嵌套响应;L3服务完毕后,返回L0中断服务程序;L0服务完毕后,按照顺序应处理L2,L2开放了更高级中断L4,因此响应了L4,L4响应完成后再继续执行L2级中断服务程序。(2)若这5级中断同时发出中断请求,按更改后的次序画出进入各级中断处理程序的过程示意图。(L1L3L0L4L2)11/14/202264按优先次序先调用L0,L0屏蔽了本级和低级中断请求,而L1的12、下列陈述中正确的是()A、在DMA周期内,CPU不能执行程序B、中断发生时,CPU首先执行入栈指令将程序计数器内容保护起来C、DMA传送方式中,DMA控制器每传送一个数据就窃取一个指令周期D、输入输出操作的最终目的是要实现CPU与外设之间的数据传输14、IEEE1394是()I/O标准接口,与SCSI()I/O标准接口相比,它具有更高的(),更强的(),体积(),连接方便。A、并行 B、串行 C、数据传输速率D、数据传输实时性 E、小DDBCAE11/14/20226512、下列陈述中正确的是()DDBCAE11/1214、Pentium系统有两类中断源:

①由CPU外部的硬件信号引发的称为_________,它分为__________和__________;

②由指令引发的称为_________,其中一种是_________,另一种是____________。15、SCSI是系统级(),是处于主适配器和智能设备控制器之间的()IO接口。SCSI-3标准允许SCSI总线上连接的设备由()个提高到()个,可支持()位数据传输。A.并行B.接口C.16D.8E.16BADCE外部中断可屏蔽中断非屏蔽中断异常中断执行异常指令中断11/14/20226614、Pentium系统有两类中断源:

①由CPU外部的硬件通道方式利用通道来管理外设的工作,可以实现对外设的统一管理和外设与内存之间的数据传送,减轻了CPU的负担,大大提高了CPU的工作效率。DMA方式需要硬件DMAC的控制管理主存与高速外设之间大批数据交换;数据传送速度很高,传送速率仅受到内存访问时间的限制。中断方式一般适用于随机出现的慢速外设的数据传送服务;一旦提出请求应立即进行,节省了CPU的时间开销,但硬件结构稍复杂一些。16、比较通道、DMA、中断三种基本I/O方式的异同点。11/14/202267通道方式16、比较通道、DMA、中断三种基本I/O方式的异同第1章计算机系统概论第1章计算机系统概论4.冯诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分?冯诺依曼计算机的主要设计思想存储程序并按地址顺序执行冯诺依曼计算机主要包括存储器、运算器、控制器、输入和输出五部分组成11/14/2022694.冯诺依曼型计算机的主要设计思想是什么?它包括哪些主要5.什么是存储容量?什么是单元地址?

什么是数据字?什么是指令字?存储容量存储器所能保存二进制数据的总数;常用单位为KB、MB等。单元地址用于识别存储器中每个存储单元的编号,即单元地址。数据字表示计算机所要处理数据的计算机字,称为数据字。指令字表示一条指令的计算机字,称为指令字。11/14/2022705.什么是存储容量?什么是单元地址?

什么是数据字?什么6.什么是指令?什么是程序?指令由操作码和操作数两部分构成能够表示计算机中的一个基本操作的代码或二进制串。程序用于求解某一问题的一串指令序列,称为该问题的计算程序,简称为程序。11/14/2022716.什么是指令?什么是程序?指令11/12/202247.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?计算机对指令和数据的区分是依靠指令的执行阶段来决定的;在取指阶段,从存储器中读取的均是CPU要执行的指令;在执行阶段,从存储器中读取的一定是指令执行所需要的操作数;11/14/2022727.指令和数据均存放在内存中,计算机如何区分它们是指令还8.什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能。内存:用于存放系统当前运行所需要的程序和数据的半导体存储器,称为内存储器,简称内存;外存用于存放程序和数据,但不能被CPU直接访问的大容量存储器,称为外存储器,简称为外存;外存一般包括磁盘存储器和光盘存储器。CPU运算器和控制器合称为中央处理器,简称CPU。适配器主机和不同速度的外设之间的一种部件,用于主机和外设之间的信息转换。11/14/2022738.什么是内存?什么是外存?什么是CPU?什么是适配器?第2章运算方法和运算器第2章运算方法和运算器1.用8位编码表示下列各整数的原码、反码、补码。真值原码反码补码-35-0100011101000111101110011011101127+1111111011111110111111101111111-127-1111111111111111000000010000001-1-000000110000001111111101111111111/14/2022751.用8位编码表示下列各整数的原码、反码、补码。真值原码若a7=0,则X为正数,显然a0···a6取任何值均可。若a7=1,则X为负数,[X]移=0.a6

a5

···

a0∵-0.5D=-0.100000B,则[-0.5D]移=0.100000∴若要X>-0.5,即等价于[X]移>[-0.5D]移 即0.a6

a5···a0>0.100000,因此必须是a5···a0不全为0。结论:如果a7=0,a6···a0取任何值均可;如果a7=1,必须满足a6=1且a5···a0不全为0。2.设[X]补=a7.a6a5···a0,其中ai取0或1,

若要X>-0.5,求a0a1a2···

a7的取值。11/14/202276若a7=0,则X为正数,显然a0···a6取任何值均可。3.有一个字长为32位的浮点数,符号位1位;阶码8位,用移码表示;尾数23位,用补码表示;基数为2。请写出:(1)最大数的二进制表示,(2)最小数的二进制表示,(3)规格化数所能表示的数的范围。设移码采用移128码,且机器数格式如右:最大值(最大正数)01111111111111111111111111111111即x=(1-2-23)*2127

二进制表示:x=(1-0.00000000000000000000001)*21111111

最小值(最小负数)11111111100000000000000000000000即x=-1*2127二进制表示:x=-1*21111111

符号位S(1位)阶码E(8位)尾数M(23位)11/14/2022773.有一个字长为32位的浮点数,符号位1位;阶码8位,用移3.有一个字长为32位的浮点数,符号位1位;阶码8位,用移码表示;尾数23位,用补码表示;基数为2。请写出:(1)最大数的二进制表示,(2)最小数的二进制表示,(3)规格化数所能表示的数的范围。设移码采用移128码,且机器数格式如右:规格化数表示范围最大正数:01111111111111111111111111111111即x=(1-2-23)*2127最小正数:00000000010000000000000000000000即x=2-1*2-128最大负数:10000000001111111111111111111111即x=-(2-1+2-23)*2-128最小负数:11111111100000000000000000000000即x=-1*2127规格化的正数范围2-129~(1-2-23)*2127 负数范围-2127~-(2-1+2-23)*2-128符号位S(1位)阶码E(8位)尾数M(23位)11/14/2022783.有一个字长为32位的浮点数,符号位1位;阶码8位,用移4、将下列十进制数表示成IEEE754标准的32位浮点规格化数。27/6427/64=0.011011B=1.1011*2-2e=-2,则E=e+127=125∴规格化数-27/64-27/64=-0.011011B=-1.1011*2-2

∴规格化数符号位阶码(8)尾数(23)00111110110110000000000000000000符号位阶码(8)尾数(23)1011111011011000000000000000000011/14/2022794、将下列十进制数表示成IEEE754标准的32位浮点规格化+[y]补00.000115、已知x和y,用变形补码计算x+y,同时指出结果是否溢出。x=0.11011y=0.00011[x]补=00.11011,[y]补=00.00011∴[x+y]补=00.11110,未溢出x+y=+0.11110[x]补00.1101100.1111011/14/202280+[y]补00.000115、已知x和y,x=0.11011y=-0.10101[x]补=00.11011,[y]补=11.01011∴[x+y]补=00.00110,未溢出x+y=+0.00110+[y]补

11.010115、已知x和y,用变形补码计算x+y,同时指出结果是否溢出。[x]补

00.1101100.0011011/14/202281x=0.11011y=-0.10101+[y]补x=-0.10110y=-0.00001[x]补=11.01010,[y]补=11.11111∴[x+y]补=11.01001,未溢出x+y=-0.10111+[y]补

11.111115、已知x和y,用变形补码计算x+y,同时指出结果是否溢出。[x]补

11.0101011.0100111/14/202282x=-0.10110y=-0.00001+[y]6、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。x=0.11011y=-0.11111[x]补=00.11011,[-y]补=00.11111∴x-y溢出(上溢)[x]补

00.11011+[-

y]补

00.1111101.1101011/14/2022836、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。6、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。x=0.10111y=0.11011[x]补=00.10111,[-y]补=11.00101∴[x-y]补=11.11100,未溢出x-y=-0.00100[x]补

00.10111+[-

y]补

11.0010111.1110011/14/2022846、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。6、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。x=0.11011y=-0.10011[x]补=00.11011,[-y]补=00.10011∴[x-y]补溢出(上溢)[x]补

00.11011+[-

y]补

00.1001101.0111011/14/2022856、已知x和y,用变形补码计算x-y,同时指出结果是否溢出。7、用原码阵列乘法器计算x×y。x=11011y=-11111机器内部补码数据:

[x]补=011011[y]补=100001符号位单独运算:0⊕1=1算前求补器输出:

|x|=11011|y|=11111乘法阵列: |x|×|y|=1101000101算后求补器输出:[x×y]补=10010111011

∴x×y=-110100010111011110111101111011110111101000101×111111101111/14/2022867、用原码阵列乘法器计算x×y。x=11011y=-7、用原码阵列乘法器计算x×y。x=-11111y=-11011机器内部补码数据:[x]补=100001[y]补=100101符号位单独考虑:1⊕1=0算前求补器输出:|x|=11111|y|=11011乘法阵列: |x|×|y|=1101000101算后求补输出:[x×y]补=01101000101

∴x×y=0110100010111111111110000011111111111101000101×110111111111/14/2022877、用原码阵列乘法器计算x×y。x=-11111y=-19-1、x=2-011×0.100101,y=2-010×(-0.011110),求[x+y]设尾数阶码均使用双符号位的补码表示[x]浮=11101,00.100101[y]浮=11110,11.1000101)求阶差并对阶

△E=Ex-Ey=[Ex]补+[-Ey]补=11101+00010=11111 修改后的x表示为:[x]浮=11110,0.010010(1)2)尾数求和MS=Mx+My=11.110100(1)3)规格化处理执行2次左规处理,MS=11.010010(0),ES=111004)舍入处理

5)判溢出故得最终结果为x+y=2-100×(-0.101110)00.010010+11.10001011.110100采用0舍1入法处理,则舍去0阶码符号位为11,不溢出11/14/2022889-1、x=2-011×0.100101,y=2-010×(9-1、x=2-011×0.100101,y=2-010×(-0.011110),求[x-y]设尾数阶码均使用双符号位的补码表示[x]浮=11101,00.100101[y]浮=11110,11.1000101)求阶差并对阶

△E=Ex-Ey=[Ex]补+[-Ey]补=11101+00010=11111

修改后的x表示为:[x]浮=11110,0.010010(1)2)尾数求差MS=Mx-My=00.110000(1)3)规格化处理4)舍入处理

5)判溢出故得最终结果为x+y=2-010×0.11000100.010010+00.01111000.110000采用0舍1入法处理,则进位,MS=00.110001阶码符号位为11,不溢出[-My]补[Mx]补不需规格化11/14/2022899-1、x=2-011×0.100101,y=2-010×(9-2、x=2-101×(-0.010110)、y=2-100×0.010110,求[x+y]设尾数阶码均使用双符号位的补码表示[x]浮=11011,11.101010[y]浮=11100,00.0101101)求阶差并对阶△E=Ex-Ey=[Ex]补+[-Ey]补=11011+00100=11111即△E为-1,x的阶码小,应使Mx右移1位,Ex加1,[x]浮=11100,1.110101(0)2)尾数求和MS=Mx+My=00.001011(0)3)规格化处理执行2次左规处理,MS=00.101000(0),ES=110104)舍入处理

5)判溢出故得最终结果为x+y=2-110×(0.101100)11.110101(0)+00.01011000.001011(0)采用0舍1入法处理,则舍去0阶码符号位为11,不溢出11/14/2022909-2、x=2-101×(-0.010110)、y=2-109-2、x=2-101×(-0.010110)y=2-100×0.010110,求[x-y]设尾数阶码均使用双符号位的补码表示

[x]浮=11011,11.101010[y]浮=11100,00.0101101)求阶差并对阶△E=Ex-Ey=[Ex]补+[-Ey]补=11011+00100=11111即△E为-1,x的阶码小,应使Mx右移1位,Ex加1,[x]浮=11100,1.110101(0)2)尾数求差MS=Mx-My=11.011111(0)3)规格化处理4)舍入处理

5)判溢出故得最终结果为x+y=2-100×(-0.100001)11.110101+11.10101011.011111[-My]补[Mx]补采用0舍1入法处理,则舍去0阶码符号位为11,不溢出不需规格化11/14/2022919-2、x=2-101×(-0.010110)y=2第3章内部存储器第3章内部存储器1、设有一个具有20位地址和32位字长的存储器,问:该存储器能存储多少字节的信息?存储容量=存储单元个数×每单元字节数 =220×32bit如果存储器有512K×8位SRAM芯片组成,需要多少片?需要做存储芯片的字位扩展;位扩展:4片512K×8位芯片构成512K×32位的存储组;字扩展:2组512K×32位存储组构成1M×32位的存储器;因此,共需要2×4=8片给定的SRAM芯片需要多少位地址做芯片选择?字扩展的是2个存储组,因此,需1位地址做片选。11/14/2022931、设有一个具有20位地址和32位字长的存储器,问:该存储器由16K×8位的芯片字位扩展构成64K×32位的存储器;位扩展:由4片16K×8位的芯片构成16K×32位的存储组;字扩展:由4组16K×32位存储组构成16K×32位的存储器;因此,4个存储组的片选信号应由最高两位地址A14和A15产生;该存储器的组成逻辑框图如下:3、用16K×8位的DRAM芯片构成64K×32位存储器,问:

(1)画出该存储器的组成逻辑框图。2:4译码器A14A15CS3CS2CS0CS1A13~A0D0~D7/WE11/14/202294由16K×8位的芯片字位扩展构成64K×32位的存储器;3、位扩展16K×8RAMA13~A0D7~D0/WE/CS16K×8RAMA13~A0D7~D0/WE/CSA13~A0D7~D0D15~D816K×8RAMA13~A0D7~D0/CS/WE16K×8RAMA13~A0D7~D0/CS/WED23~D16D31~D23/CS/WE11/14/202295位扩展16K×8A13~A0D7~D0/WE/CS16K×8字扩展16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/CS/WE/WEA13~A0D31~D074LS139/G1BA/Y0/Y1/Y2/Y3/MREQA14A1511/14/202296字扩展16K×32A13~A0D31~D0/WE/CS16K3、用16K×8的DRAM芯片构成64K×32位存储器,要求:

(2)设储器读/写周期为0.5μs,CPU在1μs内至少要访问一次。试问采用哪种方式比较合理?两次刷新的最大时间间隔是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论