📜  门| GATE CS Mock 2018 |第 41 题

📅  最后修改于: 2021-09-24 05:50:51             🧑  作者: Mango

考虑 RISC 机器中的以下指令序列:

捕获

条件和无条件分支指令使用 PC 相对寻址模式,偏移量以字节为单位指定到分支指令的目标位置。此外,偏移量始终与程序序列中的下一条指令的地址有关。如果分支指令的目标是 i,则 Offest 的十进制值为 __________。
(一) -16
(乙) 18
(C) 1000
(D)以上都不是答案:(一)
说明:假设第一条指令的地址是 1000。因此,

333

问题说分支指令的目标是 ‘i’,在我们的例子中是 1000。
因此,我们需要从地址 1016(当前由 PC 指向)转到地址 1000
1016 – 1000 = 16
因此,我们必须将 Offset 指定为 -16,这意味着应该从下一个地址指令(1000)中减去 16。

替代方式——

Instruction            Bytes
i               0-3
i+1               4-6
i+2                 7-11
i+3                 12-12
i+3            13-15
Next Instruction    16
Instruction            Bytes
i               0-3
i+1               4-6
i+2                 7-11
i+3                 12-12
i+3            13-15
Next Instruction    16

根据 PC 相对模式,

有效PC地址=下一条指令地址+偏移量
0(i) = 16 + 偏移
0-16 = 偏移

偏移 = -16
选项(A)是正确的。
这个问题的测验