1

GDB でデバッグしようとしているアセンブリがあります。より具体的には、プログラム全体でどの値が比較されているかを調べようとしていますが、何をステップスルーするかがわからない命令がたくさんあります。cmp のような特定のタイプの命令にヒットするまで単純に実行する方法はありますか? 例えば:

0x08048eaf <+98>:    mov    %ecx,%edx
0x08048eb1 <+100>:   sub    (%eax),%edx
0x08048eb3 <+102>:   mov    %edx,(%eax)
0x08048eb5 <+104>:   add    $0x4,%eax
0x08048eb8 <+107>:   cmp    %ebx,%eax
0x08048eba <+109>:   jne    0x8048eaf <func+98>

これは単純なループですが、compare ステートメントを確認するためだけに他のすべてのコマンドを実行する必要はありません。と入力できることuntil *0x8048eb8はわかっていますが、次の比較がどうなるかわからない場合はどうすればよいでしょうか?

Web を検索してみましたが、答えが見つかりませんでした。

4

1 に答える 1

1

と入力してみてくださいbreak *0x08048eba

于 2013-09-26T01:59:11.653 に答える