文章
149
粉丝
195
获赞
0
访问
19.0k
1)
指令 1 EA = 2000H
指令 2 EA = 4000H
指令 3 TA = 3FF2H
2)
指令 1(直接寻址,访存取数到寄存器):
IF(2) + ID(1) + EX(1) + MEM(2) + WB(1) = 7 时钟
指令 2(变址寻址,访存取数到寄存器):
IF(2) + ID(1) + EX(1)(计算 EA=SI+A)+ MEM(2) + WB(1) = 7 时钟
指令 3(相对寻址 JMP,不访存,只修改 PC):
IF(2) + ID(1) + EX(1)(计算 TA=PC+A,并修改 PC)
没有 MEM,没有 WB(JMP 不写通用寄存器,但 EX 结束时 PC 已更新)
所以 = 4 时钟
3)
指令占比:
直接寻址类(CPI=7):30%
变址寻址类(CPI=7):25%
相对寻址类(CPI=4):20%
寄存器寻址类(如 MOV CX, DX):25%
寄存器寻址类指令:
IF(2) + ID(1) + EX(1)(寄存器运算)+ WB(1) = 5 时钟(无 MEM)
平均 CPI = 0.3×7+0.25×7+0.2×4+0.25×5
= 2.1+1.75+0.8+1.25
= 5.9
4)
指令数 N=1000
平均 CPI = 5.9
时钟频率 f=1 GHz
时钟周期 T=1 ns
总时间 =N×CPI×T=1000×5.9×1 ns=5.90 μs
评分及理由
(1)得分及理由(满分3分)
学生答案中,指令1和指令2的EA计算正确,各得1分;指令3的TA计算错误,因为相对寻址中A为12位有符号数,需扩展为16位后与PC相加,PC当前值为4000H,-0010H扩展为16位是FFF0H,正确计算应为4000H+FFF0H=3FF0H(有进位舍去),学生得到3FF2H可能是符号扩展或加法...
登录后发布评论
暂无评论,来抢沙发