GDB:#汇编输出的目的是什么?

时间:2014-10-26 12:03:27

标签: assembly gdb

在尝试使用GDB时,我注意到一些汇编指令后缀为#(hex)。这是一个例子:

0x7ffff1f0f0d6 <inflate+5158>   mov    %rax,0x18(%r13)
0x7ffff1f0f0da <inflate+5162>   jmpq   0x7ffff1f0e3bf <inflate+1807>
0x7ffff1f0f0df <inflate+5167>   lea    0x7bca(%rip),%rsi        # 0x7ffff1f16cb0
0x7ffff1f0f0e6 <inflate+5174>   movl   $0x1d,0x0(%r13)
0x7ffff1f0f0ee <inflate+5182>   mov    %rsi,0x30(%rbp)

# 0xfffff1f16cb0部分的含义是什么?它看起来像某种评论,但它试图传达什么信息?

额外信息: 这是一个没有调试符号的x86_64应用程序的反汇编。

1 个答案:

答案 0 :(得分:2)

这只是您的反汇编程序的友好服务,它不在机器代码中。 gdb为您计算实际地址,因此您不必手动执行此操作。在您的示例0x7bca(%rip)中,%rip的值为0x7ffff1f0f0e6(以下说明的地址),并在其中添加0x7bca,即0x7ffff1f16cb0,即打印的值

相关问题