📜  门| GATE CS 2008 |第76章

📅  最后修改于: 2021-06-28 18:08:31             🧑  作者: Mango

延迟分支可以帮助处理控制隐患。

对于所有延迟的条件分支指令,无论条件评估为真还是假,
(A)执行条件分支指令后的指令
(B)执行掉落路径中的第一条指令
(C)执行所取路径中的第一条指令
(D)分支比任何其他指令花费更长的时间执行答案: (D)
说明:为了避免由于条件分支指令引起的流水线延迟,在条件分支指令的下方放置了一条合适的指令,以便无论是否执行分支都将执行该指令,并且该指令不会影响程序行为。

另一种解释:
总是执行流水线中分支指令之后的指令,因为通常分支目标地址在ID处可用,从而导致流水线停顿。该停顿时隙被称为分支延迟时隙。由于我们事先不知道转移是否会发生,因此我们需要用适当的指令(例如,没有依赖性的指令或NOP指令)填充延迟时隙。
这个问题的测验