我使用bochs作为调试器。我使用" s"命令单步执行我的代码。然而,我的问题是,每当一个" int"指令来了,它开始逐步通过BIOS代码。是否有一个命令我可以输入它以跳过所有BIOS代码并返回到我的代码?
答案 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
开始的内存中)以及我设置断点的位置。