【问题标题】:gdb disassemble one linegdb反汇编一行
【发布时间】:2012-06-03 22:06:29
【问题描述】:

我只想反汇编 gdb 中的某一行代码;为此,我需要所述行的内存地址。如何获取 gdb 中特定代码行的地址?或者更好的是,gdb 中有没有按行号反汇编的命令?

【问题讨论】:

    标签: c gcc gdb


    【解决方案1】:

    在你想反汇编的那一行打断,然后,你可以尝试获取当前指令。

    disp/i $pc
    

    当我在没有调试信息的情况下调试二进制文件时,这总是对我有用。也可以通过print $pcinfo registers 或简单地使用x 指令来简单地获取当前的pc。 例如:

    x/10i address  //displays the first 10 instructions in assembly starting from address
    

    x/10i register //displays the first 10 instructions starting from address stored in register
    

    【讨论】:

      【解决方案2】:

      您可以使用:set disassemble-next-line on 按行号进行反汇编。然后使用任何你想在你想查看的特定行设置断点的技术。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-03-15
        • 1970-01-01
        • 1970-01-01
        • 2014-09-09
        • 2010-12-07
        • 2010-12-19
        • 2019-11-23
        • 2018-09-25
        相关资源
        最近更新 更多