(15 分)假定计算机 M 字长为 16 位,按字节编

(15 分)假定计算机 M 字长为 16 位,按字节编址,连接 CPU 和主存的系统总线中地址 线为 20 位、数据线为 8 位,采用 16 位定长指令字,指令格式及其说明如下:

指令说明

其中,op1~op3 为操作码,rs、rt 和 rd 为通用寄存器编号,R[r]表示寄存器 r 的内容,imm 为 立即数,target 为转移目标的形式地址。请回答下列问题。

(1)ALU 的宽度是多少位?可寻址主存空间大小为多少字节?指令寄存器、主存地址寄存 器(MAR)和主存数据寄存器(MDR)分别应有多少位? 

(2)R 型格式最多可定义多少种操作?I 型和 J 型格式总共最多可定义多少种操作?通用寄 存器最多有多少个? 

(3)假定 op1 为 0010 和 0011 时,分别表示带符号整数减法和带符号整数乘法指令,则指令 01B2H 的功能是什么(参考上述指令功能说明的格式进行描述)?若 1、2、3 号通用寄存器 当前内容分别为 B052H、0008H、0020H,则分别执行指令 01B2H 和 01B3H 后,3 号通用寄 存器内容各是什么?各自结果是否溢出? 

(4)若采用 I 型格式的访存指令中 imm(偏移量)为带符号整数,则地址计算时应对 imm 进 行零扩展还是符号扩展? 

(5)无条件转移指令可以采用上述哪种指令格式?


【答案解析】 

(1)ALU 的宽度为 16 位。可寻址主存空间大小为 2^20 字节(或 1MB)。指令寄存器、MAR 和 MDR 各有 16 位、20 位和 8 位。 

(2)R 型最多有 24(或 16)种操作。I 型和 J 型总共最多有 63 种操作。通用寄存器最多有 4 个。 

(3)指令 01B2H=000000 01 10 11 0010B,其功能为 R[3]←R[1]-R[2]。 执行指令 01B2H 后,R[3]=B052H-0008H=B04AH;结果不益出;执行指令 01B3H 后,R[3]=R[1] ×R[2]=B052H×0008H=8290H,结果溢出。 

(4)应对 imm 进行符号扩展。 

(5)无条件转移指令可以采用 J 型格式。

答案
暂无答案

题目信息

题号:6931
题型:简答题
难度:普通