《2022年计算机组成原理第四版课后习题答案.docx》由会员分享,可在线阅读,更多相关《2022年计算机组成原理第四版课后习题答案.docx(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选学习资料 - - - - - - - - - 第一章1 比较数字运算机和模拟运算机的特点;解:模拟运算机的特点:数值由连续量来表示,运算过程是连续的;数字运算机的特点:数值由数字量(离散量)来表示,运算按位进行;两者主要区分见 P1 表 1.1 ;2 数字运算机如何分类?分类的依据是什么?解:分类:数字运算机分为专用运算机和通用运算机;通用运算机又分为巨型机、大型 机、中型机、小型机、微型机和单片机六类;分类依据:专用和通用是依据运算机的效率、速度、价格、运行的经济性和适应性来划分 的;通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据储备容 量、指令系统规模和机器价格等因素;3
2、 数字运算机有那些主要应用?(略)4 冯. 诺依曼型运算机的主要设计思想是什么?它包括哪些主要组成部分?解:冯 . 诺依曼型运算机的主要设计思想是:储备程序和程序掌握;储备程序:将解题的程序(指令序列)存放到储备器中;程序掌握:掌握器次序执行储备的程序,按指令功能掌握全机和谐地完成运算任务;主要组成部分有:掌握器、运算器、储备器、输入设备、输出设备;5 什么是储备容量?什么是单元地址?什么是数据字?什么是指令字?解:储备容量:指储备器可以容纳的二进制信息的数量,通常用单位 容KB、MB、GB来度量,储备量越大,表示运算机所能储备的信息量越多,反映了运算机储备空间的大小;单元地址:单元地址简称地
3、址,在储备器中每个储备单元都有唯独的地址编号,称为单元 地 址;数据字:如某运算机字是运算操作的对象即代表要处理的数据,就称数据字;指令字:如某运算机字代表一条指令或指令的一部分,就称指令字;1 / 30 名师归纳总结 - - - - - - -第 1 页,共 30 页精选学习资料 - - - - - - - - - 6 什么是指令?什么是程序?解:指令:运算机所执行的每一个基本的操作;程序:解算某一问题的一串指令序列称为该问题的运算程序,简称程序;7 指令和数据均存放在内存中,运算机如何区分它们是指令仍是数据?解:一般来讲,在取指周期中从储备器读出的信息即指令信息;而在执行周期中从储备器中读
4、出的信息即为数据信息;8 什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能;解:内存:一般由半导体储备器构成,装在底版上,可直接和 CPU交换信息的储备器称为内存 储 器,简称内存;用来存放常常使用的程序和数据;外存:为了扩大储备容量,又不使成本有很大的提高,在运算机中仍配备了储备容量更大 的 磁盘储备器和光盘储备器,称为外储备器,简称外存;外存可储备大量的信息,计 算 机需要使用时,再调入内存;CPU:包括运算器和掌握器;基本功能为:指令掌握、操作掌握、时间掌握、数据加工;适配器:连接主机和外设的部件,起一个转换器的作用,以使主机和外设和谐工作;9 运算机的系统软件包括哪几类?
5、说明它们的用途;解:系统软件包括:(1)服务程序:诊断、排错等(2)语言程序:汇编、编译、说明等(3)操作系统(4)数据库治理系统 用途:用来简化程序设计,简化使用方法,提高运算机的使用效率,发挥和扩大运算机的 功能 及用途;10 说明软件进展的演化过程;(略)11 现代运算机系统如何进行多级划分?这种分级观点对运算机设计会产生什么影响?解:多级划分图见 P16 图 1.6 ;可分为:微程序设计级、一般机器级、操作系统级、汇编语言 级和 高级语言级;用这种分级的观点来设计运算机,对保证产生一个良好的系统结构是有很大帮忙的;2 / 30 名师归纳总结 - - - - - - -第 2 页,共 3
6、0 页精选学习资料 - - - - - - - - - 12 为什么软件能够转化为硬件?硬件能够转化为软件?实现这种转化的媒介是什么?(略)13 运算机应用 与应用运算机 在概念上等价吗?用学科角度和运算机系统的层次结构来寿命你的观点;(略)其次章1. 写出以下各数的原码、反码、补码、移码表示(用 8 位二进制数);其中 MSB是最高位(又是符号位)LSB是最低位;假如是小数,小数点在 MSB之后;假如是整数,小数点在 LSB之后;1 -35/64 2 23/128 3 -127 4 用小数表示 -1 5 用整数表示 -1 解: 1 先把十进制数-35/64 写成二进制小数:-35/64 10
7、=-100011/1000000 2=- 100011 2 -110 2=-0.100011 2令 x=-0.100011B 2 x原=1.1000110 留意位数为8 位 x反=1.0111001 2 x补=1.0111010 x移=0.0111010 先把十进制数23/128 写成二进制小数:23/12810=10111/100000002=10111 2 -111 2=0.0001011令 x=0.0001011B 3 x原=0.0001011 x反=0.0001011 x补=0.0001011 x移=1.0001011先把十进制数 -127 写成二进制小数:-12710=-111111
8、12令 x= -1111111B 4 x原=1.1111111 x反=1.0000000 x补=1.0000001 x移=1.0000001令 x=-1.000000B 原码、反码无法表示5 x补=1.0000000 x移=0.0000000令 Y=-1=-0000001B Y反=11111110 Y原=10000001 Y补=11111111 Y移=011111112. 设X 补= a 0,a1,a2 a 6 , 值;其中 ai 取 0 或 1,如要 x 0.5, 求 a0,a1,a2, , a6 的取3 / 30 名师归纳总结 - - - - - - -第 3 页,共 30 页精选学习资料
9、 - - - - - - - - - 解: a0= 1 ,a1= 0 , a 2, , a6=1 1;3. 有一个字长为32 位的浮点数,阶码10 位(包括1 位阶符),用移码表示;尾数22 位(包括 1 位尾符)用补码表示,基数R=2;请写出:1 最大数的二进制表示;2 最小数的二进制表示;3 规格化数所能表示的数的范畴;4 最接近于零的正规格化数与负规格化数;解:( 1)1111111111 0111111111111111111111 ( 2)1111111111 1000000000000000000000 ( 3)1111111111 0111111111111111111111(
10、4)0000000000 00000000000000000000010111111111 1000000000000000000000 0000000000 11111111111111111111114. 将以下十进制数表示成浮点规格化数,阶码3 位,用补码表示;尾数9 位,用补码表示;(1) 27/64 (2) -27/64 解:( 1)27/64=11011B=0.011011B=0.11011B浮点规格化数 : 1111 0110110000( 2) -27/64= -11011B= -0.011011B= -0.11011B浮点规格化数 : 1111 10010100005. 已知
11、 X 和 Y, 用变形补码运算(1)X=0.11011 Y=0.00011 (2)X= 0.11011 Y= -0.10101 (3)X=-0.10110 Y=-0.00001X+Y, 同时指出运算结果是否溢出;解:( 1)先写出 x 和 y 的变形补码再运算它们的和x 补=00.11011 y 补=00.00011 x+y 补=x 补+y 补=00.11011+00.00011=0.11110 x+y=0.1111B 无溢出;( 2)先写出 x 和 y 的变形补码再运算它们的和x 补=00.11011 y 补=11.01011 x+y 补=x 补+y 补=00.11011+11.01011=
12、00.00110 x+y=0.0011B 无溢出;( 3)先写出 x 和 y 的变形补码再运算它们的和x 补=11.01010 y 补=11.11111 x+y 补=x 补+y 补=11.01010+11.11111=11.01001 x+y= -0.10111B 无溢出4 / 30 名师归纳总结 - - - - - - -第 4 页,共 30 页精选学习资料 - - - - - - - - - 6. 已知 X 和 Y, 用变形补码运算 1 X=0.11011 Y= -0.11111 2 X=0.10111 Y=0.11011 3 X=0.11011 Y=-0.10011X-Y, 同时指出运算
13、结果是否溢出;解:( 1)先写出 x 和 y 的变形补码,再运算它们的差x 补=00.11011 y 补=11.00001 -y 补=00.11111 x-y 补=x 补+-y 补=00.11011+00.11111=01.11010 运算结果双符号不相等为正溢出X-Y=+1.1101B ( 2)先写出 x 和 y 的变形补码,再运算它们的差x 补=00.10111 y 补=00.11011 -y 补=11.00101 x-y 补=00.10111+11.00101=11.11100 x -y= -0.001B 无溢出( 3)先写出 x 和 y 的变形补码,再运算它们的差x 补=00.1101
14、1 y 补=11.01101 -y 补=00.10011 x-y 补=x 补+-y 补=00.11011+00.10011=01.01110 运算结果双符号不相等为正溢出X-Y=+1.0111B7. 用原码阵列乘法器、补码阵列乘法器分别运算 X Y;(1)X=0.11011 Y= -0.11111 (2)X=-0.11111 Y=-0.11011 解:( 1)用原码阵列乘法器运算:x补=0.11011 y补=1.00001 0 1 1 0 1 1 10 0 0 0 1 - 0 0 (0 0 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
15、0 1 1 0 1 1 - 1 0 0 1 0 1 1 1 0 1 1 x y 补=1.0010111011 x y= -0.11010001015 / 30 名师归纳总结 - - - - - - -第 5 页,共 30 页精选学习资料 - - - - - - - - - 8 用原码阵列除法器运算 X Y;(1)X=0.11000 Y= -0.11111 (2)X=-0.01011 Y=0.11001解:( 1)x 原=x 补=0.11000 - y 补=1.00001 被除数 X 0.11000 +- y 补 1.00001 - 余数为负 1.11001 q0=0 左移 1.10010 +|
16、y|补0.11111 - 余数为正 0.10001 q1=1 左移 1.00010 +-|y| 补 1.00001 - 余数为正 0.00011 q2=1 左移 0.00110 +-|y| 补 1.00001 - 余数为负 1.00111 q3=0 左移 0.01110 +|y|补0.11111 - 余数为负 1.01101 q4=0 左移 0.11010 +|y|补0.11111 - 余数为负 1.11001 q5=0 +|y| 补 0.11111 - 余数 0.11000故 x y 原=1.11000 即 x y= -0.11000B 余数为0.11000B阶码、尾数均用补码表示, 完9.
17、 设阶为 5 位 包括 2 位阶符 , 尾数为 8 位 包括 2 位数符 , 成以下取值的X+Y ,X-Y 运算:(1)X= 0.100101 Y= -0.011110 (2)X= ( -0.010110 ) Y= 0.0101106 / 30 名师归纳总结 - - - - - - -第 6 页,共 30 页精选学习资料 - - - - - - - - - 解:( 1)将 y 规格化得: y= -0.111100 x浮=1101,00.100101 y浮=1101, 11.000100 -y浮=1101,00.111100 对阶 E 补=Ex 补+-Ey 补=1101+0011=0000 E
18、x=Ey尾数相加相加 相减00.100101 00.100101 + 11.000100 + 00.111100 - - 11.101001 01.100001 x+y 浮=1101,11.101001 左规 x+y 浮=1100,11.010010 x+y= -0.101110 x-y 浮=1101,01.100001 右规 x-y 浮=1110,00.1100001 舍入处理得 x-y 浮=1110,00.110001 x -y= 0.110001( 2) x 浮=1011,11.101010 y 浮=1100,00.010110 -y 浮=1100,11.101010 对阶 E 补=Ex
19、 补+-Ey 补=1011+0100=1111 E= -1 x 浮=1100,11.1101010 尾数相加相加 相减11.1101010 11.1101010 + 00.010110 + 11.101010 - - 00.0010110 11.0111110 x+y 浮=1100,00.0010110 左规 x+y 浮=1010,00.1011000 x+y= 0.1011Bx-y 浮=1100,11.0111110 x -y= ( -0.100001B )13. 某加法器进位链小组信号为 C4C3C2C1 ,低位来的信号为 C0 ,请分别按下述两种方式写出C4C3C2C1 的规律表达式;(
20、1) 串行进位方式(2) 并行进位方式解 :( 1)串行进位方式:7 / 30 名师归纳总结 - - - - - - -第 7 页,共 30 页精选学习资料 - - - - - - - - - C1 = G 1 + P 1 C 0 其中: G1 = A 1 B 1 , P 1 = A 1B1C2 = G 2 + P 2 C 1 C3 = G 3 + P 3 C 2 C4 = G 4 + P 4 C 3 G2 = A 2 B 2 , P 2 = A 2B2 G3 = A 3 B 3 , P 3 = A 3B3 G4 = A 4 B 4 , P 4 = A 4B42 并行进位方式:C1 = G 1
21、 + P 1 C 0C2 = G 2 + P 2 G1 + P 2 P 1 C 0C3 = G 3 + P 3 G2 + P 3 P 2 G 1 + P 3 P 2 P 1 C0C4 = G 4 + P 4 G3 + P 4 P 3 G 2 + P 4 P 3 P 2 G1 + P 4 P 3 P 2 P 1 C 0其中 G1-G4 ,P1-P4 表达式与串行进位方式相同;14. 某机字长 16 位,使用四片 74181 组成 ALU,设最低位序标注为 0 位,要求:(1)写出第 5 位的进位信号 C6 的规律表达式;(2)估算产生 C6 所需的最长时间;(3)估算最长的求和时间;解:( 1)
22、 组成最低四位的 74181 进位输出为: C4=G+P C0 , C0 为向第 0 位的进位其中: G=y3+x3y2+x2x 3y 1+x1x2x 3y 0, P=x 0x 1x2x3所以: C5=y4+x4C4C6=y5+x5C5=y5+x5y4+x5x4C4( 2) 设标准门推迟时间为 T, 与或非 门推迟时间为 1.5T ,就进位信号 C0 由最低位传送至 C6 需经一个反相器,两级 与或非 门,故产生 C6 的最长推迟时间为:T+2 1.5T=4T( 3)最长求和时间应从施加操作数到 ALU算起:第一片 74181 有 3 级 与或非 门(产生控制参数 x0,y0Cn+4), 其次
23、、第三片 74181 共 2 级反相器和 2 级 与或非 门(进位链),第四片74181 求和规律( 1 级 与或非 门和 1 级半加器,其推迟时间为 T=3 1.5T+2T+2 1.5T+1.5T+1.5T+3T=14T3T),故总的加法时间为:17设 A,B,C是三个 16 位的通用寄存器,请设计一个 16 位定点补码运算器,能实现下述功能:(1) A BA(2) B CA, C (高位积在寄存器 A 中)(3) A BC(商在寄存器 C中)解:设计能完成加、减、乘、除运算的 分析各寄存器作用:16 位定点补码运算器框图;A 加减乘H)除被加数和同左初始为 0 被除数余数加数同左除数部分积
24、乘积(B 被乘数8 / 30 名师归纳总结 - - - - - - -第 8 页,共 30 页精选学习资料 - - - - - - - - - C - - 乘数乘积(L)商 A:累加器(16 位),具有输入、输出、累加功能及双向移位功能; B :数据寄存器(16 位),具有输入、输出功能; C :乘商寄存器(16 位),具有输入、输出功能及双向移位功能;画出框图:第三章1有一个具有20 位地址和32 位字长的储备器,问:(1) 该储备器能储备多少个字节的信息?(2) 假如储备器由 512K 8 位 SRAM芯片组成,需要多少芯片?(3) 需要多少位地址作芯片选择?解:( 1) 220= 1M,
25、该储备器能储备的信息为:1M 32/8=4MB( 2)( 1000/512 ) ( 32/8 )= 8 (片)( 3) 需要 1 位地址作为芯片选择;2. 已知某 64 位机主存采纳半导体储备器,其地址码为26 位,如使用256K 16 位的 DRAM芯片组成该机所答应的最大主存空间,并选用模块板结构形式,问:(1) 每个模块板为 1024K 64 位,共需几个模块板?(2) 个模块板内共有多少 DRAM芯片 . (3)主存共需多少 DRAM芯片 . CPU 如何选择各模块板?解: 1. 共需模块板数为 m:m=64 块 2. 每个模块板内有 DRAM芯片数为 n: n= / 64/16=16
26、 片 3 主存共需 DRAM芯片为: 16 64=1024 片 每个模块板有 16 片 DRAM芯片,容量为 1024K 64 位,需 20 根地址线 A19A0 完成9 / 30 名师归纳总结 - - - - - - -第 9 页,共 30 页精选学习资料 - - - - - - - - - 模块板内储备单元寻址;一共有64 块模块板,采纳6 根高位地址线A25A20 ,通过6:64 译码器译码产生片选信号对各模块板进行选择;3 用 16K 8 位的 DRAM芯片组成 64K 32 位储备器,要求:1 画出该储备器的组成规律框图;2 设储备器读 / 写周期为 0.5 S, CPU 在 1 S
27、内至少要拜访一次;试问采纳哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部储备单元刷新一遍所需的实际刷新时间是多少?解:( 1)组成 64K 32 位储备器需储备芯片数为N=(64K/16K ) ( 32 位/8 位) =16(片)每 4 片组成 16K 32 位的储备区,有 A13-A 0 作为片内地址,用 A15 A 14 经 2: 4 译码器产生片选信号,规律框图如下所示:(2)依题意,采纳异步刷新方式较合理,可满意 CPU在 1 S 内至少拜访内存一次的要求;设 16K 8 位储备芯片的阵列结构为128 行 128 列,按行刷新,刷新周期T=2ms,就异步刷新的间隔时间为:就
28、两次刷新的最大时间间隔发生的示意图如下可见,两次刷新的最大时间间隔为 15.5-0.5=15 S 对全部储备单元刷新一遍所需时间为 t Rt R 0.5 128=64 S10 / 30 名师归纳总结 - - - - - - -第 10 页,共 30 页精选学习资料 - - - - - - - - - 7某机器中,已知配有一个地址空间为0000H-3FFFH 的 ROM区域;现在再用一个RAM芯片8K 8 形成 40K 16 位的 RAM区域,起始地址为 6000H, 假定 RAM芯片有 和 信号掌握端; CPU的地址总线为 A15-A 0,数据总线为 D15-D0,掌握信号为 R/ 读/ 写
29、, 访存 ,要求:(1) 画出地址译码方案;(2) 将 ROM与 RAM同 CPU连接;解:( 1)依题意,主存地址空间分布如右图所示,可选用 2 片 2712816K 8 位 的 EPROM作为ROM区; 10 片的 8K 8 位 RAM片组成 40K 16 位的 RAM区; 27128 需 14 位片内地址,而 RAM需13 位片内地址,故可用A15-A13 三位高地址经译码产生片选信号, 方案如下 :11 / 30 名师归纳总结 - - - - - - -第 11 页,共 30 页精选学习资料 - - - - - - - - - (2)8 储备器容量为64M,字长 64 位,模块数m =
30、 8 ,分别用次序方式和交叉方式进行组织;存储周期 T = 100ns,数据总线宽度为64 位,总线周期 = 10ns .问次序储备器和交叉储备器的带宽各是多少?解:信息总量: q = 64 位 8 =512 位次序储备器和交叉储备器读出 8 个字的时间分别是:t 2 = m T = 8 100ns =8 10 s t 1 = T + m - 1 = 100 + 7 10 = 1.7 10 s 次序储备器带宽是:W2 = q / t2 = 512 (8 10 )= 64 10(位 / S )交叉储备器带宽是:W1 = q / t 1 = 512 (1.7 10)= 301 10(位 / S )
31、9 CPU 执行一段程序时 , cache 完成存取的次数为 2420 次,主存完成存取的次数为 80 次,已知 cache 储备周期为 40ns,主存储备周期为 240ns ,求 cache/ 主存系统的效率和平均访问时间;解:先求命中率 h h=nc/n c +n m 2420 2420 80 0.968 就平均拜访时间为 t at a0.968 40 1- 0.968 240 46.4ns r 240 40 6 cache/ 主存系统的效率为e 200ns, Cache/ 主存系统平均拜访时间为50ns ,e1/r1 r 0.968 86.2 10已知 Cache 储备周期40ns ,主
32、存储备周期求 Cache 的命中率是多少?解: ta = tc h +tr 1 -h h =ta-t r/tc-t r =50-200/40-200=15/16=0.9412 / 30 名师归纳总结 - - - - - - -第 12 页,共 30 页精选学习资料 - - - - - - - - - 11主存容量为4MB,虚存容量为1GB,就虚存地址和物理地址各为多少位?如页面大小为4KB,就页表长度是多少?解:已知主存容量为 4MB,虚存容量为 1GB 4M 物理地址为 22 位又 1G 虚拟地址为 30 位页表长度为 1GB 4KB230 212=218=256K14假设主存只有 a,b,
33、c 三个页框,组成 a 进 c 出的 FIFO 队列,进程拜访页面的序列是0,1,2.4,2,3,0,2,1.3,2 号;用列表法求采纳 LRU替换策略时的命中率;解:命中率为15从以下有关储备器的描述中,选择出正确的答案:A 多体交叉储备主要解决扩充容量问题;B 拜访储备器的恳求是由 CPU发出的;C Cache 与主存统一编址,即主存空间的某一部分属于 Cache;D Cache 的功能全由硬件实现;解: D16从以下有关储备器的描述中,选择出正确的答案:A在虚拟储备器中,外存和主存一相同的方式工作,因此答应程序员用比主存空间大得多的外存空间编程;B在虚拟储备器中,规律地址转换成物理地址是
34、由硬件实现的,仅在页面失效时才由操作系统将被拜访页面从外存调到内存,必要时仍要先把被剔除的页面内容写入外存;C储备爱护的目的是:在多用户环境中,既要防止一个用户程序出错而破坏系统软件或其他用户程序,又要防止一个用户拜访不是安排给他的主存区,以达到数据安全和保密的要求;解: C第四章13 / 30 名师归纳总结 - - - - - - -第 13 页,共 30 页精选学习资料 - - - - - - - - - 1ASCll 码是 7 位,假如设计主存单元字长为32 位,指令字长为12 位,是否合理?为什么?解:指令字长设计为12 位不是很合理;主存单元字长为32 位,一个储备单元可存放4 个A
35、SCII 码,余下 4 位可作为ASCII 码的校验位(每个ASCII 码带一位校验位),这样设计仍是合理的;但是,设计指令字长为12 位就不合理了,12 位的指令码存放在字长32 位的主存单元中,造成 19 位不能用而铺张了储备空间;2. 假设某运算机指令长度为 20 位,具有双操作数、单操作数、无操作数三类指令形式,每个操作数地址规定用 6 位表示;问:如操作码字段固定为 8 位,现已设计出 m条双操作数指令,n 条无操作数指令,在此情形下,这台运算机最多可以设计出多少条单操作数指令?解:这台运算机最多可以设计出 256-m-n 条单操作数指令3指令格式结构如下所示,试分析指令格式及寻址方
36、式特点;解:指令格式及寻址方式特点如下:单字长二地址指令;操作码 OP可指定 =64 条指令; RR 型指令,两个操作数均在寄存器中,源和目标都是通用寄存器(可分别指定 16 个寄存器之一);这种指令格式常用于算术规律类指令;4指令格式结构如下所示,试分析指令格式及寻址方式特点;解:指令格式及寻址方式特点如下:双字长二地址指令;操作码 OP可指定 =64 条指令; RS 型指令,两个操作数一个在寄存器中(16 个寄存器之一),另一个在储备器中;有效地址通过变址求得:E=(变址寄存器) D,变址寄存器可有 16 个;14 / 30 名师归纳总结 - - - - - - -第 14 页,共 30
37、页精选学习资料 - - - - - - - - - 5指令格式结构如下所示,试分析指令格式及寻址方式特点;解:指令格式及寻址方式特点如下:单字长二地址指令;操作码 OP可指定 =16 条指令;有 8 个通用寄存器,支持 8 种寻址方式;可以是 RR型指令、 SS型指令、 RS型指令、6一种单地址指令格式如下所示,其中 I 为间接特点,X 为寻址模式,D为形式地址;I ,X,D组成该指令的操作数有效地址 E;设 R为变址寄存器,R1 为基值寄存器,PC为程序计数器,请在下表中第一列位置填入适当的寻址方式名称;解:直接寻址相对寻址变址寻址基址寻址间接寻址基址间址寻址7某运算机字长16 位,主存容量
38、为64K 字,采纳单字长单地址指令,共有40 条指令,试采用直接、立刻、变址、相对四种寻址方式设计指令格式;解: 40 条指令需占用操作码字段(OP)6 位,这样指令余下长度为10 位;为了掩盖主存640K字的地址空间,设寻址模式(X)2 位,形式地址(D)8 位,其指令格式如下:寻址模式定义如下:X= 0 0 直接寻址 有效地址 E=D(直接寻址为 256 个储备单元)X= 0 1 立刻寻址 D 字段为操作数X= 1 0 变址寻址 有效地址 E= R X D (可寻址 64K 个储备单元)15 / 30 名师归纳总结 - - - - - - -第 15 页,共 30 页精选学习资料 - -
39、- - - - - - - X= 1 1 相对寻址有效地址 E= (PC) D (可寻址64K 个储备单元)其中 RX为变址寄存器(16 位), PC为程序计数器(16 位),在变址和相对寻址时,位移量 D 可 正可负;8某机字长为 32 位,主存容量为 1M,单字长指令 , 有 50 种操作码 , 采纳页面寻址、立刻、直接等寻址方式;CPU中有 PC, IR,AR, DR 和 16 个通用寄存器,页面寻址可用 PC高位部分与形式地址部分拼接成有效地址;问:(1)指令格式如何支配?(2)主存能划分成多少页面?每页多少单元?(3)能否增加其他寻址方式?解: (1)依题意 , 指令字长32 位,主存1M字,需 20 位地址 A19-A0;50 种操作码,需6 位OP,指令寻址方式Mode为 2 位,指定寄存器Rn 需 4 位;设有单地址指令、双地址指令和零地址指令,现只争论前二种指令;单地址指令的格式为:Mode=00 时为立刻寻址方式,指令的 230 位为立刻数;Mode=01 时为直接寻址方式,指令的 190 位为有效地址;双地址指令的格式为:Mode1=01 时为寄存器直接寻址方式,操作数 S=R
限制150内