请帮助我,我不明白这段代码:
...
BUFFER = 0x0600
...
rep movs jmpf BUFFER+migrate, 0 ;???
migrate:
findactive:
testb dl,dl ; ???
jns nextdisk
我是一个旧的 x86 编码器。我不得不承认我也不明白你的代码。“movs”指令行看起来是非法的。您确定您已正确转录代码吗?
这是 MasterBootRecord 代码的一部分。在将一个扇区从引导驱动器复制到 IBM PC 的内存地址 7C00h 后,需要将此代码复制到新地址(通常在 0600h,第一个空闲内存),使用“rep movs”,然后从新分配“jmpf BUFFER+”继续安全执行迁移,0"(jmpf 偏移量,段)。有人忘记在“rep movs”之后按“Enter”。