“CPU 执行无限跳转”是什么意思?

Pri*_*una 8 cpu boot machine-code sector

我正在阅读:https : //www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf 我在第 8 页阅读了以下内容:

e9 fd ff 00 00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

*

00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 aa

最初的三个字节,十六进制为 0xe9、0xfd 和 0xff,实际上是 CPU 制造商定义的机器代码指令,用于执行无限跳转。

他们所说的“执行无休止的跳跃”是什么意思?

har*_*old 8

这只是一个跳跃到自己的跳跃。没什么特别的。

在 16 位模式下,e9 fd ffjmp rel16. 偏移量0xfffd为 -3,因为跳转偏移量是“从下一条指令的开始”,即从第一个 00 返回 3 个字节,因此返回到jmp.