1

当 BIOS 将控制权交给从 MBR 加载的代码时,第一条指令似乎是

jmpi go, BOOTSEG

其中 go 是下一条指令之前的另一个标签,BOOTSEG 是 0x07c0。执行这样一条指令的原因似乎是当 BIOS 传递控制权时,段寄存器设置为零,该指令将段寄存器设置为适当的值(在本例中为 0x07c0)。

我的问题是:为什么要将段寄存器设置为该值?jmp 指令按预期执行的事实表明,加载的 MBR 代码可以在不更改段值的情况下正常执行。如果不进行此段更改会发生什么?

4

0 回答 0