文章
9
粉丝
0
获赞
0
访问
3.9k
(1)3、10、14;相对寻址;pc先+1到00401010,然后根据偏移量21,00401010+21=00401031
(2)SF=0、OF=0、ZF=0;ZF||SF
(3)左移两位,下标*4、加数组起始地址、数组下标写入ecx、循环次数、寄存器间接寻址、字节编址、080A010h
(4)RISC、不定长指令
评分及理由
(1)得分及理由(满分4分)
得分:4分
理由:学生正确识别了所有可能跳转的指令(3、10、14),并指出采用相对寻址方式。跳转目标地址计算过程正确:PC先更新为0040100E+2=00401010(指令长度为2字节),加上偏移量21(十六进制)得到00401031。计算过程和标准答案一致。
(2)得分及理由(满分3分)
得分:1分
理由:学生正确给出了标志位状态(SF=0、OF=0、ZF=0),得1分。但跳转逻辑表达式错误(ZF||SF),标准答案应为(SF⊕OF)|ZF。表达式缺少溢出标志OF的异或操作,逻辑错误扣2分。
(3)得分及理由(满分7分)
得分:4分
理由:
- 指令功能分析:学生部分正确。指出shl左移2位(等价于×4)得1分;addl加数组起始地址得1分;但movl功能描述错误("数组下标写入ecx"应为"读取A[i]的值到ecx"),扣1分。
- ecx内容:错误(应为A[i]的值,学生答"数组下标"),扣1分。
- 寻址方式:正确(寄存器间接寻址),得1分。
- 编址方式:正确(字节编址),得1分。
- A[0]地址:错误(学生答080A010h,标准答案为0804A000h),地址计算未体现,扣1分。
(4)得分及理由(满分2分)
得分:0分
理由:学生错误判断为RISC(实际应为CISC),理由"不定长指令"恰好是CISC的特征(RISC为定长指令),逻辑错误,不得分。
题目总分:4+1+4+0=9分
登录后发布评论
暂无评论,来抢沙发