GDB:使用操作码检查as指令

GDB:使用操作码检查as指令,gdb,Gdb,是否可以像我可以看到十六进制格式的asm和原始指令(如反汇编/r)那样,将内存作为指令(x/i)进行检查? 有时我想反汇编GDB拒绝反汇编的内存部分,它说:“没有函数包含指定的地址”。 唯一的选项是x/i,但我想看看到底是什么十六进制值转换成了什么指令 我想反汇编GDB拒绝反汇编的内存部分,它说:“没有函数包含指定的地址” disas/r 0x1234,0x1235即使在GDB无法确定功能边界时也能工作。例如: (gdb) disas/r 0x0000000000400803 No functi

是否可以像我可以看到十六进制格式的asm和原始指令(如反汇编/r)那样,将内存作为指令(
x/i
)进行检查?
有时我想反汇编GDB拒绝反汇编的内存部分,它说:“没有函数包含指定的地址”。
唯一的选项是
x/i
,但我想看看到底是什么十六进制值转换成了什么指令

我想反汇编GDB拒绝反汇编的内存部分,它说:“没有函数包含指定的地址”

disas/r 0x1234,0x1235
即使在GDB无法确定功能边界时也能工作。例如:

(gdb) disas/r 0x0000000000400803
No function contains specified address.

(gdb) disas/r 0x0000000000400803,0x000000000040080f
Dump of assembler code from 0x400803 to 0x40080f:
   0x0000000000400803:  e8 b8 fd ff ff  callq  0x4005c0 <system@plt>
   0x0000000000400808:  48 81 45 f0 00 10 00 00 addq   $0x1000,-0x10(%rbp)
End of assembler dump.
(gdb)disas/r 0x0000000000400803
没有函数包含指定的地址。
(gdb)disas/r 0x0000000000400803,0x000000000040080f
汇编程序代码从0x400803转储到0x40080f:
0x00000000000400803:e8 b8 fd ff ff调用0x4005c0
0x0000000000400808:48 81 45 F000 10 00 addq$0x1000,-0x10(%rbp)
汇编程序转储结束。