java跳到下一个断点是_使用gdb跳转到下一个“指令”

我试图计算金丝雀值设置和检查机制 .

#include

int main(void)

{

return printf("Hi!\n");

}

当拆卸主体时,我明白了

(gdb) disas main

0x080483f4 : lea 0x4(%esp),%ecx

0x080483f8 : and $0xfffffff0,%esp

0x080483fb : pushl -0x4(%ecx)

0x080483fe : push %ebp

0x080483ff : mov %esp,%ebp

0x08048401 : push %ecx

0x08048402 : sub $0x14,%esp

0x08048405 : mov %gs:0x14,%eax

0x0804840b : mov %eax,-0x8(%ebp)

0x0804840e : xor %eax,%eax

0x08048410 : movl $0x8048500,(%esp)

0x08048417 : call 0x8048320

0x0804841c : mov -0x8(%ebp),%edx

0x0804841f : xor %gs:0x14,%edx

0x08048426 : je 0x804842d

0x08048428 : call 0x8048330

0x0804842d : add $0x14,%esp

0x08048430 : pop %ecx

0x08048431 : pop %ebp

0x08048432 : lea -0x4(%ecx),%esp

0x08048435 : ret

我使用断点设置为0x0804840e

b *0x0804840e

程序流程在此断点处停止后,我希望 gdb 转到下一个 instruction 而不是下一个 line of c code . 我不认为我可以使用 next . 除了在每条指令设置断点之外,我还有什么其他选择?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值