跳过“call”,“jmp”或“int”指令的bochs命令

时间:2014-06-23 20:45:35

标签: bochs

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

1 个答案:

答案 0 :(得分:0)

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

b <address>

然后我应该使用&#34; c&#34;命令继续直到断点。

现在,为了弄清楚&#34; int&#34;之后指令的地址是什么?指令是,我使用ndisasm反汇编我的代码,并在&#34; int&#34;之后找到了指令。指令:

0000000A  B40E              mov ah,0xe

然后我拿了0000000A,添加了0x7C00(因为引导文件被加载到从0x7C00开始的内存中)以及我设置断点的位置。