我在哪里更改了寄存器变量值?

时间:2013-05-03 09:37:26

标签: assembly gdb x86-64

我正在玩GDBx/<op> $var是查看当前值的命令吗?我没有意识到导致x/d $rbx的值在以下命令序列中从28变为-5604的原因,因为我没有使用stepi或其他任何新步骤。任何iea?

(gdb) x/s $rbx
0x7fffffffe718:  "\034\352\377\377\377\177"
(gdb) x/d $rbx
0x7fffffffe718: 28
(gdb) x/s $rbx
0x7fffffffe718:  "\034\352\377\377\377\177"
(gdb) x/1ws $rbx
0x7fffffffe718:  U"\xffffea1c翿"
(gdb) x/1wd $rbx
0x7fffffffe718: -5604

(gdb) x/d $rbx
0x7fffffffe718: -5604

(gdb) x/s $rbx
0x7fffffffe718:  "\034\352\377\377\377\177"
(gdb) x/d $rbx
0x7fffffffe718: 28

1 个答案:

答案 0 :(得分:0)

  

我没有意识到是什么导致x / d $ rbx的值从28变为-5604

地址0x7fffffffe718的内存中的值已更改。

GDB默认检查的字节数有什么变化。