跳过"call"、"jmp"或"int"指令的 bochs 命令



我使用bochs作为调试器。我使用"s"命令逐步执行我的代码。然而,我的问题是,每当出现"int"指令时,它就开始逐步执行BIOS代码。我可以输入一个命令让它跳过所有的BIOS代码并返回到我的代码吗?

我订阅了bochs的邮件列表并发送了一封电子邮件询问我的问题。在一封电子邮件中,我得到了一个答案,我应该使用"b"命令在"int"指令之后设置一个断点,如下所示:

b <address>

然后我应该使用"c"命令继续,直到断点。

现在,为了弄清楚"int"指令之后的指令地址是什么,我使用ndisasm反汇编了我的代码,找到了"int"指令之后的指令:

0000000A  B40E              mov ah,0xe

我然后采取0000000A,添加0x7C00到它(因为引导文件加载到内存开始在0x7C00),这就是我设置我的断点。

相关内容

  • 没有找到相关文章