gdb の特定の 1 行のコードのみを逆アセンブルしたい。これを行うには、その行のメモリアドレスが必要です。gdb で特定のコード行のアドレスを取得するにはどうすればよいですか? またはさらに良いことに、gdb に行番号で逆アセンブルするコマンドはありますか?
2046 次
2 に答える
3
逆アセンブルする行にブレークを入れてから、で現在の命令を取得してみてください。
disp/i $pc
デバッグ情報なしでバイナリをデバッグする場合、これは常に機能します。また、pc
または単に命令を使用して電流を取得することもできます。例えば:print $pc
info registers
x
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
于 2012-06-03T22:24:47.603 に答える
2
次を使用できます:set disassemble-next-line on
行番号で逆アセンブルします。次に、任意の手法を使用して、表示する特定の行にブレークポイントを設定します。
于 2012-06-03T22:43:00.060 に答える