4

假设我想反汇编文件 x 的第 mn 行,其中文件 x 不在当前上下文中。这种操作是否可行,如果可以,如何操作?注意:我正在使用 x86 Linux。

4

3 回答 3

7

您可以使用带有/m键的 disassemble 命令在其汇编对应项的前面显示原始 C 行:

disassemble /m 'my_file.c'::my_function

这不需要任何初步步骤,尽管它似乎不接受您所要求的源代码行范围。

于 2014-09-09T12:21:14.493 回答
3

作为一个相当晚且可能多余的答案,但希望对像我这样的人有用,我想对这个和你关于获取行号地址的其他问题进行完整的回答。

disassemble命令可以反汇编地址范围disassemble [Start],[End]. 但是你想反汇编行范围。

要获取源代码行的地址,您可以使用info line命令info line [File]:[Line]

于 2019-04-10T16:36:04.420 回答
0

这是一个笨拙的方法:在你感兴趣的行上设置一个断点,断点确认会给你一个地址。然后清除断点并在该地址上运行disas或。x/20i

于 2012-07-01T23:09:59.880 回答