【发布时间】:2019-10-09 01:07:42
【问题描述】:
我在 gdb 中有以下设置,我在第 22 行有一个断点:
循环代码为:
start_loop:
movl data_items(,%edi,4), %eax
cmpl $0, %eax
je exit_loop
incl %edi
cmpl %ebx, %eax
jge start_loop
movl %eax, %ebx
jmp start_loop
exit_loop:
如何查看gdb 中的所有这些值?比如看看%eax是什么,%ebx是什么,%edi是什么,data_items(,%edi,4)是什么?
【问题讨论】:
-
在 gdb 中尝试
help。很多方式,你可以做info registers或p $eax和类似的。要检查内存,请使用x命令。 -
@Jester 没错,但是当我尝试这样做时,我得到:
>>> p %eax A syntax error in expression, near%eax'。 >>> p eax 当前上下文中没有符号“eax”。` -
仔细看。我使用了
$而不是%。 -
请不要显示图片的文字。改为显示文本。