2018-2019-1 20165336《信息安全系统设计基础》第四周学习总结
1.教材学到的知识点
教材学习中的问题和解决过程
书中例题指令编码问题:需要掌握Y86-64指令集,Y86-64指令集的功能码,Y86-64程序寄存器标识符




考试错题总结
- 1.4.在Y86-64中,对一条跳转指令,决定是不是应该选择分支的阶段是()
A . fetch
B . decode
C . execute
D . memory
E . write back
F . PC update
正确答案: C
解析:在执行阶段,算数/逻辑单元(ALU)要么执行指令指明的操作(根据ifun的值),计算存储器引用的有效地址,要么增加或减少栈指针。得到的值我们称为valE。在此,也可能设置条件码。对一条跳转指令来说,这个阶段会检验条件码和分支条件,看是不是应该选择分支。

- 2.图中的代码说明异常处理的细节问题是()
A . 同时多条指令引起异常
B . 指令执行引起异常,后来由于分支预测错误,取消了该指令
C . 不同阶段更新系统状态的不同部分
D . 与流水线无关的异常
正确答案: B
解析:在这个程序中,流水线会预测选择分支,因此他会取出并以一个值为0xFF的字节作为指令。译码阶段会因此发现一个非法指令异常。稍后,流水线会发现不应该选择分支,因此根本就不应该取出位于地址0x00e的指令。流水线控制逻辑会取消该指令,但是我们想要避免出现异常。
2018-2019-1 20165336《信息安全系统设计基础》第四周学习总结
原文:https://www.cnblogs.com/20165336kzq/p/9825878.html