《计算机组成原理白中英版第五版课后答案课件.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理白中英版第五版课后答案课件.ppt(67页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第1章 计算机系统概论4.冯诺依曼型计算机的主要设计思想是什冯诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分?么?它包括哪些主要组成部分?l冯诺依曼计算机的主要设计思想冯诺依曼计算机的主要设计思想存储程序并按地址顺序执行存储程序并按地址顺序执行l冯诺依曼计算机主要包括冯诺依曼计算机主要包括存储器、运算器、控制器、输入和输出五部分组成存储器、运算器、控制器、输入和输出五部分组成1/13/202325.什么是存储容量?什么是单元地址?什么是存储容量?什么是单元地址?什么是数据字?什么是指令字?什么是数据字?什么是指令字?l存储容量存储容量存储器所能保存二进制数据的总数存储器所能保存二进
2、制数据的总数;常用单位为常用单位为KB、MB等。等。l单元地址单元地址用于识别存储器中每个存储单元的编号,即单元地址。用于识别存储器中每个存储单元的编号,即单元地址。l数据字数据字表示计算机所要处理数据的计算机字,称为数据字。表示计算机所要处理数据的计算机字,称为数据字。l指令字指令字表示一条指令的计算机字,称为指令字。表示一条指令的计算机字,称为指令字。1/13/202336.什么是指令?什么是程序?什么是指令?什么是程序?l指令指令由操作码和操作数两部分构成由操作码和操作数两部分构成能够表示计算机中的一个基本操作的代码或二能够表示计算机中的一个基本操作的代码或二进制串。进制串。l程序程序用
3、于求解某一问题的一串指令序列,称为该问用于求解某一问题的一串指令序列,称为该问题的计算程序,简称为程序。题的计算程序,简称为程序。1/13/202347.指令和数据均存放在内存中,计算机如指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?何区分它们是指令还是数据?l计算机对指令和数据的区分是依靠计算机对指令和数据的区分是依靠指令的执行阶段指令的执行阶段来决定的;来决定的;在取指阶段,从存储器中读取的均是在取指阶段,从存储器中读取的均是CPU要执要执行的指令;行的指令;在执行阶段,从存储器中读取的一定是指令执在执行阶段,从存储器中读取的一定是指令执行所需要的操作数;行所需要的操作数;1
4、/13/202358.什么是内存?什么是外存?什么是什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能。什么是适配器?简述其功能。l内存:内存:用于存放系统当前运行所需要的程序和数据的半导体存储用于存放系统当前运行所需要的程序和数据的半导体存储器,称为内存储器,简称内存;器,称为内存储器,简称内存;l外存外存用于存放程序和数据,但不能被用于存放程序和数据,但不能被CPU直接访问的大容量直接访问的大容量存储器,称为外存储器,简称为外存;存储器,称为外存储器,简称为外存;外存一般包括磁盘存储器和光盘存储器。外存一般包括磁盘存储器和光盘存储器。lCPU运算器和控制器合称为中央处理器,简称
5、运算器和控制器合称为中央处理器,简称CPU。l适配器适配器主机和不同速度的外设之间的一种部件,用于主机和外设主机和不同速度的外设之间的一种部件,用于主机和外设之间的信息转换。之间的信息转换。1/13/20236第2章 运算方法和运算器1.用用8位编码表示下列各整数的原码、反码、位编码表示下列各整数的原码、反码、补码。补码。真值真值原码原码反码反码补码补码-35-010 00111010 00111101 11001101 1101127+111 11110111 11110111 11110111 1111-127-111 11111111 11111000 00001000 0001-1-0
6、00 00011000 00011111 11101111 11111/13/20238l若若a7 0,则,则X为正数,显然为正数,显然a0 a6取任何值均可。取任何值均可。l若若a7 1,则,则X为负数,为负数,X移移0.a6 a5 a0 0.5D=0.100000B,则,则0.5D 移移0.100000 若要若要X0.5,即等价于,即等价于X移移 0.5D 移移 即即0.a6 a5 a00.100000,因此必须是,因此必须是a5 a0不全为不全为0。l 结论:结论:如果如果a7 0,a6 a0取任何值均可;取任何值均可;如果如果a7 1,必须满足,必须满足a6=1 且且a5 a0不全为不
7、全为0。2.设设X补补a7.a6 a5 a0,其中,其中ai 取取0或或1,若要若要X-0.5,求,求a0 a1 a2 a7 的取值。的取值。1/13/202393.有一个字长为有一个字长为32位的浮点数,符号位位的浮点数,符号位1位;阶码位;阶码8位,用移码位,用移码表示;尾数表示;尾数23位,用补码表示;基数为位,用补码表示;基数为2。请写出:。请写出:(1)最大最大数的二进制表示,数的二进制表示,(2)最小数的二进制表示,最小数的二进制表示,(3)规格化数规格化数所所能表示的数的范围。能表示的数的范围。l设移码采用移设移码采用移128码,且机器数格式如右:码,且机器数格式如右:最大值(最
8、大正数)最大值(最大正数)0 1111 1111 111 1111 1111 1111 1111 1111即即 x=(1-2-23)*2127 二进制表示:二进制表示:x=(1-0.0000 0000 0000 0000 0000 001)*2111 1111 最小值(最小负数)最小值(最小负数)1 1111 1111 000 0000 0000 0000 0000 0000 即即 x=1*2127二进制表示:二进制表示:x=-1*2111 1111 符号位符号位S(1S(1位位)阶码阶码E(8E(8位位)尾数尾数M(23M(23位位)1/13/2023103.有一个字长为有一个字长为32位的
9、浮点数,符号位位的浮点数,符号位1位;阶码位;阶码8位,用移码表位,用移码表示;尾数示;尾数23位,用补码表示;基数为位,用补码表示;基数为2。请写出:。请写出:(1)最大数的最大数的二进制表示,二进制表示,(2)最小数的二进制表示,最小数的二进制表示,(3)规格化数规格化数所能表示所能表示的数的范围。的数的范围。l设移码采用移设移码采用移128码,且机器数格式如右:码,且机器数格式如右:规格化数表示范围规格化数表示范围最大正数:最大正数:0 1111 1111 111 1111 1111 1111 1111 1111 即即 x=(1-2-23)*2127最小正数:最小正数:0 0000 00
10、00 100 0000 0000 0000 0000 0000 即即 x=2-1*2-128最大负数:最大负数:1 0000 0000 011 1111 1111 1111 1111 1111 即即 x=-(2-1+2-23)*2-128最小负数:最小负数:1 1111 1111 000 0000 0000 0000 0000 0000 即即 x=1*2127l规格化的正数范围规格化的正数范围2-129(1-2-23)*2127 负数范围负数范围2127 (2-1+2-23)*2-128符号位符号位S(1S(1位位)阶码阶码E(8E(8位位)尾数尾数M(23M(23位位)1/13/202311
11、4、将下列十进制数表示成、将下列十进制数表示成IEEE754标准的标准的32位浮点规格化数。位浮点规格化数。l 27/6427/64=0.011011B=1.1011*2-2e=2,则,则Ee127125 规格化数规格化数l27/64 27/64=0.011011B=1.1011*2-2 规格化数规格化数符号位符号位阶码阶码(8)(8)尾数尾数(23)(23)0 00111 11010111 11011011 0000 0000 0000 0000 0001011 0000 0000 0000 0000 000符号位符号位阶码阶码(8)(8)尾数尾数(23)(23)1 10111 110101
12、11 11011011 0000 0000 0000 0000 0001011 0000 0000 0000 0000 0001/13/202312 y补补 00.000115、已知、已知x和和y,用变形补码计算,用变形补码计算xy,同,同时指出结果是否溢出。时指出结果是否溢出。x=0.11011 y=0.00011 x补补00.11011 ,y补补00.00011 x+y补补00.11110,未溢出,未溢出 x+y=+0.11110 x补补 00.1101100.111101/13/202313x=0.11011 y=0.10101 x补补00.11011 ,y补补11.01011x+y补补
13、 00.00110,未溢出,未溢出 x+y=+0.00110 y补补 11.010115、已知、已知x和和y,用变形补码计算,用变形补码计算xy,同,同时指出结果是否溢出。时指出结果是否溢出。x补补 00.1101100.001101/13/202314x=0.10110 y=0.00001 x补补11.01010 ,y补补11.11111x+y补补 11.01001,未溢出,未溢出 x+y =-0.10111 y补补 11.111115、已知、已知x和和y,用变形补码计算,用变形补码计算xy,同,同时指出结果是否溢出。时指出结果是否溢出。x补补 11.0101011.010011/13/20
14、23156、已知、已知x和和y,用变形补码计算,用变形补码计算xy,同,同时指出结果是否溢出。时指出结果是否溢出。x=0.11011 y=0.11111 x补补00.11011,y补补 00.11111x-y溢出(上溢)溢出(上溢)x补补 00.11011 y补补 00.1111101.110101/13/2023166、已知、已知x和和y,用变形补码计算,用变形补码计算xy,同,同时指出结果是否溢出。时指出结果是否溢出。x=0.10111 y=0.11011 x补补00.10111,y补补 11.00101x-y补补 11.11100,未溢出未溢出 x-y=-0.00100 x补补 00.1
15、0111 y补补 11.0010111.111001/13/2023176、已知、已知x和和y,用变形补码计算,用变形补码计算xy,同,同时指出结果是否溢出。时指出结果是否溢出。x=0.11011 y=0.10011 x补补00.11011,y补补 00.10011x-y补补溢出(上溢)溢出(上溢)x补补 00.11011 y补补 00.1001101.011101/13/2023187、用原码阵列乘法器计算、用原码阵列乘法器计算xy。x11011 y11111机器内部补码数据:机器内部补码数据:x补补0 11011 y补补1 00001符号位单独运算:符号位单独运算:0 11算前求补器输出:
16、算前求补器输出:|x|=11011|y|=11111乘法阵列:乘法阵列:|x|y|1 1 0 1 0 0 0 1 0 1算后求补器输出:算后求补器输出:xy补补 1 0010111011 xy=-1101000101 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 11 1 0 1 11 1 0 1 0 0 0 1 0 1 1 1 1 1 1 1 1 0 1 11/13/2023197、用原码阵列乘法器计算、用原码阵列乘法器计算xy。x11111 y11011机器内部补码数据:机器内部补码数据:x补补 1 00001 y补补 1 00101符号位单独考虑:符号位单独
17、考虑:1 10 算前求补器输出:算前求补器输出:|x|=11111|y|=11011乘法阵列:乘法阵列:|x|y|1 1 0 1 0 0 0 1 0 1算后求补输出:算后求补输出:xy补补 0 1101000101 xy=0 1101000101 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 11 1 1 1 11 1 0 1 0 0 0 1 0 1 1 1 0 1 1 1 1 1 1 11/13/2023209-1、x=2-0110.100101,y=2-010(-0.011110),求,求x+yl设尾数阶码均使用双符号位的补码表示设尾数阶码均使用双符号位的补码
18、表示 x浮浮 11 101,00.100101 y浮浮 11 110,11.1000101)求阶差并对阶求阶差并对阶 EExEyEx补补Ey补补11 101 00 01011 111 修改后的修改后的x表示为:表示为:x浮浮 11 110,0.010010(1)2)尾数求和尾数求和 MS=Mx+My=11.1101 00(1)3)规格化处理规格化处理 执行执行2次左规处理,次左规处理,MS=11.0 1 0 0 1 0(0),ES=11 100 4)舍入处理舍入处理 5)判溢出判溢出故得最终结果为故得最终结果为 xy2100(0.101110)00.0 1 0 0 1 0 11.1 0 0 0
19、 1 011.1 1 0 1 0 0 采用采用0舍舍1入法处理,则舍去入法处理,则舍去0阶码符号位为阶码符号位为11,不溢出,不溢出1/13/2023219-1、x=2-0110.100101,y=2-010(-0.011110),求,求x-yl设尾数阶码均使用双符号位的补码表示设尾数阶码均使用双符号位的补码表示 x浮浮 11 101,00.100101 y浮浮 11 110,11.1000101)求阶差并对阶求阶差并对阶 EExEyEx补补Ey补补11 101 00 01011 111 修改后的修改后的x表示为:表示为:x浮浮 11 110,0.010010(1)2)尾数求差尾数求差 MS=
20、Mx My=00.110000(1)3)规格化处理规格化处理4)舍入处理舍入处理 5)判溢出判溢出故得最终结果为故得最终结果为 xy20100.11000100.0 1 0 0 1 0 00.0 1 1 1 1 000.1 1 0 0 0 0采用采用0 0舍舍1 1入法处理,则进位,入法处理,则进位,MS=00.110001阶码符号位为阶码符号位为11,不溢出,不溢出My补补Mx补补不需规格化不需规格化1/13/2023229-2、x=2-101(-0.010110)、y=2-1000.010110,求,求x+yl设尾数阶码均使用双符号位的补码表示设尾数阶码均使用双符号位的补码表示 x浮浮11
21、 011,11.101010 y浮浮11 100,00.0101101)求阶差并对阶求阶差并对阶 EExEyEx补补Ey补补11 011 00 10011 111 即即E为为1,x的阶码小,应使的阶码小,应使Mx右移右移1位,位,Ex加加1,x浮浮 11 100,1.110101(0)2)尾数求和尾数求和 MS=Mx+My=00.0 0 1 0 1 1(0)3)规格化处理规格化处理 执行执行2次左规处理,次左规处理,MS=00.1 0 1 0 0 0(0),ES=11 0104)舍入处理舍入处理 5)判溢出判溢出故得最终结果为故得最终结果为 xy2110(0.101100)11.1 1 0 1
22、 0 1(0)00.0 1 0 1 1 000.0 0 1 0 1 1(0)采用采用0舍舍1入法处理,则舍去入法处理,则舍去0阶码符号位为阶码符号位为11,不溢出,不溢出1/13/2023239-2、x=2-101(-0.010110)y=2-1000.010110,求,求x-yl设尾数阶码均使用双符号位的补码表示设尾数阶码均使用双符号位的补码表示 x浮浮11 011,11.101010 y浮浮11 100,00.0101101)求阶差并对阶求阶差并对阶 EExEyEx补补Ey补补11 011 00 10011 111 即即E为为1,x的阶码小,应使的阶码小,应使Mx右移右移1位,位,Ex加加
23、1,x浮浮 11 100,1.110101(0)2)尾数求差尾数求差 MS=Mx-My=11.0 1 1 1 1 1(0)3)规格化处理规格化处理4)舍入处理舍入处理 5)判溢出判溢出故得最终结果为故得最终结果为 xy 2100(0.100001)11.1 1 0 1 0 1 11.1 0 1 0 1 011.0 1 1 1 1 1 My补补Mx补补采用采用0 0舍舍1 1入法处理,则舍去入法处理,则舍去0 0阶码符号位为阶码符号位为11,不溢出,不溢出不需规格化不需规格化1/13/202324第第3章章 内部存储器内部存储器1、设有一个具有、设有一个具有20位地址和位地址和32位字长位字长的
24、存储器,问:的存储器,问:该存储器能存储多少字节的信息?该存储器能存储多少字节的信息?存储容量存储容量=存储单元个数存储单元个数每单元字节数每单元字节数 =22032 bit如果存储器有如果存储器有512K8位位SRAM芯片组成,需要多少片芯片组成,需要多少片?需要做存储芯片的字位扩展;需要做存储芯片的字位扩展;u位扩展:位扩展:4片片512K8位芯片构成位芯片构成512K32位的存储组;位的存储组;u字扩展:字扩展:2组组512K32位存储组构成位存储组构成1M32位的存储器;位的存储器;因此,共需要因此,共需要24=8片给定的片给定的SRAM芯片芯片需要多少位地址做芯片选择?需要多少位地址
25、做芯片选择?字扩展的是字扩展的是2个存储组,因此,需个存储组,因此,需1位地址做片选。位地址做片选。1/13/202326l由由16K8位的芯片位的芯片字位扩展字位扩展构成构成64K32位的存储器;位的存储器;位扩展位扩展:由:由4片片16K8位的芯片构成位的芯片构成16K32位的存储组;位的存储组;字扩展字扩展:由:由4组组16K32位存储组构成位存储组构成16K32位的存储器;位的存储器;因此,因此,4个存储组的片选信号应由最高两位地址个存储组的片选信号应由最高两位地址A14和和A15产生;产生;该存储器的组成逻辑框图如下:该存储器的组成逻辑框图如下:3、用、用16K8位的位的DRAM芯片
26、构成芯片构成64K32位存储器,问:位存储器,问:(1)画出该存储器的组成逻辑框图。)画出该存储器的组成逻辑框图。2:4译码器A14A15CS3CS2CS0CS1A13A0D0D7/WE1/13/202327位扩展位扩展16K8RAMA13A0D7D0/WE/CS16K8RAMA13A0D7D0/WE/CSA13A0D7D0D15D816K8RAMA13A0D7 D0/CS/WE16K8RAMA13A0D7 D0/CS/WED23D16D31D23/CS/WE1/13/202328字扩展字扩展16K32存储组存储组A13A0D31D0/WE/CS16K32存储组存储组A13A0D31D0/WE
27、/CS16K32存储组存储组A13A0D31D0/WE/CS16K32存储组存储组A13A0D31 D0/CS/WE/WEA13A0D31D074LS139/G1B A/Y0/Y1/Y2/Y3/MREQA14A151/13/2023293、用、用16K8的的DRAM芯片构成芯片构成64K32位存储器,要求:位存储器,要求:(2)设储器读设储器读/写周期为写周期为0.5s,CPU在在1s内至少要访问一次。试内至少要访问一次。试问采用哪种方式比较合理?两次刷新的最大时间间隔是多少?对问采用哪种方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?全部存储单元刷
28、新一遍所需的实际刷新时间是多少?l假定假定16K8位的位的DRAM芯片的存储矩阵是芯片的存储矩阵是128行行(1288)列列;若集中刷新,则有若集中刷新,则有128行行0.5us=64us的死时间,不合适;的死时间,不合适;若分散刷新,则每访存一次需要若分散刷新,则每访存一次需要1us,也不合适;,也不合适;所以,应采用异步式刷新方式。所以,应采用异步式刷新方式。l假定假定DRAM芯片的芯片的刷新周期为刷新周期为2ms两行的刷新间隔为:两行的刷新间隔为:2ms/128=0.015625ms=15.625usl若取若取15.5us作为实际的刷新间隔作为实际的刷新间隔刷新存储体一遍实际所用时间为:
29、刷新存储体一遍实际所用时间为:15.5us1281984us=1.984ms1/13/2023306、用用32K8位的位的EPROM芯片组成芯片组成128K16位位的只读存储器,试问:的只读存储器,试问:数据寄存器多少位?数据寄存器多少位?因为系统数据总线为因为系统数据总线为16位,所以数据寄存器位,所以数据寄存器16位位地址寄存器多少位?地址寄存器多少位?因为存储器容量为因为存储器容量为128K,需系统地址总线,需系统地址总线17位,位,所以地址寄存器所以地址寄存器17位位共需多少个共需多少个EPROM芯片?芯片?所需芯片总数:所需芯片总数:(128K/32K)(16/8)=8片片1/13/
30、2023316、用、用32K8位的位的EPROM芯片组成芯片组成128K16位的只读存储器,试位的只读存储器,试问:(问:(4)画出此存储器的组成框图。)画出此存储器的组成框图。CPU地址地址寄存器寄存器数据数据寄存器寄存器32K832K832K832K832K832K832K832K8CS3CS2CS1CS02:4译码器译码器CS0CS3A16A151/13/2023328、设存储器容量为、设存储器容量为64M,字长为,字长为64位,模块数位,模块数m=8,分,分别用顺序和交叉方式进行组织。存储周期别用顺序和交叉方式进行组织。存储周期T=100ns,数,数据总线宽度为据总线宽度为64位,总线
31、传送周期位,总线传送周期=50ns。求:顺序存。求:顺序存储器和交叉存储器的带宽各是多少?储器和交叉存储器的带宽各是多少?l顺序存储器和交叉存储器连续读出顺序存储器和交叉存储器连续读出m=8个字的数据信息量为:个字的数据信息量为:q=864=512位位l顺序存储器所需要的时间为顺序存储器所需要的时间为t1=mT=8100ns=800ns=810-7sl故顺序存储器的带宽为故顺序存储器的带宽为W1=q/t1=512/(810-7)=64107bit/sl交叉存储器所需要的时间为交叉存储器所需要的时间为t2=T+(m-1)=100ns+(8-1)50ns=450ns=4.510-7sl故交叉存储器
32、的带宽为故交叉存储器的带宽为W1=q/t2=512/(4.510-7)=113.8107bit/s1/13/2023339、CPU执行一段程序时,执行一段程序时,cache完成存取的次数为完成存取的次数为2420次,主存完成存取的次数为次,主存完成存取的次数为80次,次,已知已知cache存储周期为存储周期为40ns,主存存储周期为,主存存储周期为240ns,求求cache/主存系统的效率和平均访问时间。主存系统的效率和平均访问时间。l命中率命中率h=Nc/(Nc+Nm)=2420/(2420+80)=0.968l主存与主存与Cache的速度倍率的速度倍率r=tm/tc=240ns/40ns=
33、6l访问效率访问效率e=1/(r+(1-r)h)=1/(6+(1-6)0.968)=86.2%l平均访问时间平均访问时间ta=tc/e=40ns/0.862=46.4ns1/13/20233410、已知、已知cache存储周期存储周期40ns,主存存储周期,主存存储周期200ns,cache/主存系统平均访问时间为主存系统平均访问时间为50ns,求,求cache的命中率是多少?的命中率是多少?l由由 ta=htc+(1-h)tm,可得,可得1/13/20233513、一个组相联、一个组相联Cache由由64个行组成,每组个行组成,每组4行。行。主存储器包含主存储器包含4K个块,每块个块,每块1
34、28字。请表示内存地字。请表示内存地址的格式。址的格式。l组相联映射下的主存地址格式如下:组相联映射下的主存地址格式如下:l每块每块128字,假定主存以字进行组织字,假定主存以字进行组织块内的字地址需要块内的字地址需要7位位lCache由由64个行组成,每组个行组成,每组4行行Cache中共包含中共包含16组,需组,需4位组号位组号l主存包含主存包含4K个块个块主存块号为主存块号为12位位主存标记位有主存标记位有124=8位位主存标记主存标记组号组号块内地址块内地址7 7位位4 4位位8 8位位1/13/20233614、某机主存容量、某机主存容量1MB,字长,字长1B,块大小,块大小16B,
35、Cache容量容量64KB,若,若Cache采用直接映射方采用直接映射方式,请给出式,请给出2个不同标记的内存地址,它们映个不同标记的内存地址,它们映射到同一个射到同一个Cache行。行。l直接映射下的主存地址格式如下:直接映射下的主存地址格式如下:每块每块16B 块内的字节地址需要块内的字节地址需要4位位Cache容量容量64KB 共包含共包含4K行行 Cache块号块号12位位主存容量主存容量1MB 主存地址主存地址20位位 主存标记位主存标记位20124=4位位l两个满足题目要求的主存地址:两个满足题目要求的主存地址:0000 1001 0000 1110 0000 0001 1001
36、0000 1110 0000主存标记主存标记CacheCache行号行号块内地址块内地址4 4位位1212位位4 4位位1/13/20233715、假设主存容量、假设主存容量16M32位,位,Cache容量容量64K32位,主存与位,主存与Cache之间以每块之间以每块432位大小传送数据,位大小传送数据,请确定直接映射方式的有关参数,并画出主存地址请确定直接映射方式的有关参数,并画出主存地址格式。格式。l直接映射下的主存地址格式如下:直接映射下的主存地址格式如下:每块每块4字字 块内的字地址需要块内的字地址需要2位位Cache容量容量64KB Cache共包含共包含16K个块个块 Cache
37、块号需要块号需要14位位主存主存16MB 主存地址为主存地址为24位位 主存标记位有主存标记位有24142=8位位主存标记主存标记CacheCache行号行号块内地址块内地址2 2位位1414位位8 8位位1/13/202338第第4章章 指令系统指令系统3、指令格式结构如下所示,试分析指令指令格式结构如下所示,试分析指令格式与寻址方式特点。格式与寻址方式特点。单字长双地址码的单字长双地址码的RR型指令。型指令。操作码操作码6位,系统中可以包含位,系统中可以包含64种不同的指令。种不同的指令。源、目的操作数只能采用寄存器寻址方式。源、目的操作数只能采用寄存器寻址方式。OP目标寄存器目标寄存器源
38、寄存器源寄存器15 109 8 7 43 01/13/2023404、指令格式结构如下所示,试分析指令格式、指令格式结构如下所示,试分析指令格式与寻址方式特点。与寻址方式特点。双字长双地址码的双字长双地址码的RS型指令。型指令。操作码操作码6位,系统中可以包含位,系统中可以包含64种不同的指令。种不同的指令。源操作数只能使用寄存器寻址方式;源操作数只能使用寄存器寻址方式;目的操作数只能使用变址寻址方式;目的操作数只能使用变址寻址方式;其中,变址寄存器可使用其中,变址寄存器可使用16个通用寄存器之一;偏个通用寄存器之一;偏移量为移量为16位。位。OP源寄存器源寄存器变址寄存器变址寄存器15 10
39、9 87 43 0偏移量(偏移量(16位)位)1/13/2023416、一种单地址指令格式如下所示,、一种单地址指令格式如下所示,R变址寄存器,变址寄存器,R1基址寄存器,基址寄存器,PC程序计数器,填写下列寻址方式。程序计数器,填写下列寻址方式。寻址方式寻址方式IX有效地址有效地址E直接寻址直接寻址000E=D相对寻址相对寻址001E=(PC)+D变址寻址变址寻址010E=(R)+D基址寻址基址寻址011E=(R1)+D间接寻址间接寻址100E=(D)基址间接寻址基址间接寻址111E=(R1)+D)操作码操作码OPOP间接特征间接特征I I寻址模式寻址模式X X形式地址形式地址D D1/13
40、/2023427、某计算机字长为某计算机字长为16位位,主存容量为,主存容量为64K字,采用字,采用单字长单地址指令,共有单字长单地址指令,共有40条指令,试采用直接、条指令,试采用直接、立即、变址、相对四种寻址方式设计指令格式。立即、变址、相对四种寻址方式设计指令格式。l40条指令条指令指令操作码需指令操作码需6位,位,26=64,其中,其中24种编码未用;种编码未用;l4种寻址方式种寻址方式寻址特征需寻址特征需2位;位;l单字长单地址指令单字长单地址指令剩余剩余8位作为形式地址;位作为形式地址;l设计方案:设计方案:方案方案1:专用变址寄存器;:专用变址寄存器;方案方案2:通用寄存器作为变
41、址寄存器;:通用寄存器作为变址寄存器;寻址方式寻址方式寻址特征寻址特征X 有效地址有效地址E直接寻址方式直接寻址方式00E=D立即寻址方式立即寻址方式01D=Imm变址寻址方式变址寻址方式10E=(R)+D相对寻址方式相对寻址方式11E=(PC)+D1/13/202343方案方案1:专用变址寄存器:专用变址寄存器l各操作数的寻址范围:各操作数的寻址范围:立即数寻址方式立即数寻址方式u指令中的立即数不能超过指令中的立即数不能超过8位;位;直接寻址方式直接寻址方式u直接地址为直接地址为8位,可直接寻址范围为位,可直接寻址范围为28个单元;个单元;变址寻址方式变址寻址方式uE=(R)+D,其中变址寄
42、存器,其中变址寄存器R为为16位;位;u由于主存容量由于主存容量64K字,可直接寻址整个主存空间;字,可直接寻址整个主存空间;相对寻址方式相对寻址方式uE=(PC)+D,可直接寻址整个主存空间;,可直接寻址整个主存空间;6 6位位OPOP2 2位位寻址特征寻址特征8 8位位形式地址形式地址1/13/202344方案方案2:通用寄存器作为变址寄存器:通用寄存器作为变址寄存器l各操作数的寻址范围:各操作数的寻址范围:立即数寻址方式立即数寻址方式u指令中的立即数不能超过指令中的立即数不能超过4位;位;直接寻址方式直接寻址方式u直接地址为直接地址为4位,可直接寻址范围为位,可直接寻址范围为24个单元;
43、个单元;变址寻址方式变址寻址方式uE=(R)+D,其中变址寄存器,其中变址寄存器R为为16位;位;u由于主存容量由于主存容量64K字,可直接寻址整个主存空间;字,可直接寻址整个主存空间;相对寻址方式相对寻址方式uE=(PC)+D,可直接寻址整个主存空间;,可直接寻址整个主存空间;6 6位位OPOP2 2位位寻址特征寻址特征4 4位位寄存器寄存器4 4位位形式地址形式地址1/13/2023459、某机字长为、某机字长为32位,位,CPU中有中有16个个32位通用寄存器,设计一位通用寄存器,设计一种能容纳种能容纳64种操作的指令系统,如果采用通用寄存器作为种操作的指令系统,如果采用通用寄存器作为基
44、址寄存器,则基址寄存器,则RS型指令的最大存储空间是多少?型指令的最大存储空间是多少?l指令格式指令格式64种操作种操作 操作码操作码占占6位;位;16个通用寄存器个通用寄存器一个操作数和基址寄存器各一个操作数和基址寄存器各占占4位;位;单字长指令单字长指令 形式地址占形式地址占32 6 4 4=18位;位;l操作数操作数S的地址的地址E(R1)D,其中,其中R1为为32位的;位的;若系统的地址总线若系统的地址总线32位,则可寻址整个主存;位,则可寻址整个主存;若系统的地址总线若系统的地址总线32位,则可寻址的最大存储空间为位,则可寻址的最大存储空间为232+218操作码操作码OP操作数操作数
45、R基址寄存器基址寄存器R1形式地址形式地址D6位位4位位4位位18位位1/13/20234612、根据操作数所在的位置,指出其寻址方式。、根据操作数所在的位置,指出其寻址方式。1.操作数在寄存器中,为操作数在寄存器中,为 寻址方式;寻址方式;2.操作地址在寄存器,为操作地址在寄存器,为 寻址方式;寻址方式;3.操作数在指令中,为操作数在指令中,为 寻址方式;寻址方式;4.操作数地址(主存)在指令中,为操作数地址(主存)在指令中,为 方方式;式;5.操作数的地址为某一寄存器内容与位移量之和,操作数的地址为某一寄存器内容与位移量之和,可以是可以是 寻址方式;寻址方式;寄存器寄存器寄存器间接寄存器间
46、接立即数立即数直接寻址直接寻址相对,基址,变址相对,基址,变址1/13/202347第第5章章 中央处理机中央处理机2、参见、参见图图5.15的数据通路,画出存数指令的数据通路,画出存数指令STO R1,(R2)的指令周期流程图,其含义是将寄存器)的指令周期流程图,其含义是将寄存器R1的内容传的内容传送至(送至(R2)为地址的数存单元中。)为地址的数存单元中。指令指令地址地址指令指令数据单元数据单元数据数据地址地址数据数据1/13/202349存数指令存数指令STO R1,(,(R2)(PC)AR(M)DR(DR)IR译码译码(R2)AR(R1)DRDRMM取指周期取指周期执行周期执行周期PC
47、0GARiR/W=1DR0GIRiR20GARiR10GDRiR/W=01/13/2023503、参见图、参见图5.15的数据通路,画出取数指令的数据通路,画出取数指令LAD(R3),R0的指令周期流程图,其含义是将的指令周期流程图,其含义是将(R3)为地址数存为地址数存单元的内容取至寄存器单元的内容取至寄存器R0中。中。指令指令地址地址指令指令数据数据数据数据地址地址1/13/202351取数指令取数指令LAD(R3),R0的指令周期的指令周期(PC)AR(M)DR(DR)IR译码译码(R3)ARMMDRDRR0取指周期取指周期执行周期执行周期PC0GARiR/W=1DR0GIRiR30GA
48、RiDR0GR0iR/W=11/13/2023526、假设某机器有、假设某机器有80条指令,平均每条指令有条指令,平均每条指令有4条微条微指令组成,其中有一条取值微指令是所有指令公指令组成,其中有一条取值微指令是所有指令公用的,已知微指令长度为用的,已知微指令长度为32位,请估算控制存储位,请估算控制存储器容量。器容量。l微指令的数目为微指令的数目为803+1=241条;条;l微指令字长为微指令字长为32/8=4字节;字节;l故,控制存储器的容量为故,控制存储器的容量为 2414=964字节字节该容量为控制存储器的最小容量。该容量为控制存储器的最小容量。1/13/2023538、某机有、某机有
49、8条指令条指令I1I8,每条,每条微指令所包含的微命令控制微指令所包含的微命令控制信号如下表所示。信号如下表所示。aj分别分别对应对应10种不同性质的微命令种不同性质的微命令信号。假设一条微指令的控信号。假设一条微指令的控制字段仅为制字段仅为8位,请安排微指位,请安排微指令的控制字段格式。令的控制字段格式。l微命令数目微命令数目操作控制字段,则采操作控制字段,则采用用混合表示法设计混合表示法设计微指令;微指令;l从左表中选择互斥的微操作;从左表中选择互斥的微操作;a命令:与命令:与i互斥互斥b命令:与命令:与f、g、i、j互斥互斥c命令:与命令:与f、j互斥互斥d命令:与命令:与i、j互斥互斥
50、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互斥互斥l互斥信号组互斥信号组e、f、h和和b、i、je、f、h和和d、i、je、f、h和和b、g、ji、f、h和和b、g、j微指微指令令a b c d efg hijI1 I2 I3I4I5I6I7 I8 1/13/2023548、某机有、某机有8条指令条指令I1I8,每条微指令所包含的微命令控制信号,每条微指令所包含的微命令控制信号如下表所示