1

我正在运行一个在 64 位机器上的 32 位机器上编译的基本汇编程序。我知道有一个名为_start 的断点。当我发出break _start命令时,我收到:

Breakpoint 1 at 0x8048080

当我运行应用程序时,应用程序不会在设置的断点处中断,而是继续运行。

代码的一小段摘录:

global _start           

section .text
_start:

    jmp Begin

我的断点没有被命中的原因可能是什么?

4

1 回答 1

1

您需要添加一个 nop 作为第一条指令。然后你可以做

breakpoint *_start+1

这是由于 gdb 中的一个错误。你可以做

disassemble _start

查看可以使用 *_start+offset 格式设置的所有断点。

于 2014-01-01T17:39:49.077 回答