2016-09-21 46 views
0

使用VC可以調出反彙編窗口並穿過它。但是使用gdb似乎並不那麼直接:如何使用gdb調試到C程序的相應反彙編?

E.g.我有一個myadd.c

void main(){ 
    int i=0; 
    int j=i+1; 
    j+=2; 
} 

GCC -g myadd.c

GDB的a.out

B 2 //在詮釋J設定斷點= 1 + 1;

現在我可以使用「反彙編」命令來查看反彙編代碼。我的要求是調試「進入」像VC這樣的反彙編代碼。我試過'命令,它直接進入下一個「C」語句,而不是反彙編語句。

如何做到這一點?

回答

1

要跳轉到的下一個組件的指令,使用stepi(短si)來代替。

有關更多信息,請參閱this,尤其是如何使用display/i來顯示下一個機器指令。

1

對於一個相當不錯的裝配視圖,請使用la playout prev)並且使用sistepi)。使用C-x a返回到常規的gdb提示符。在某些情況下,其他佈局也可能會有用。