2014-04-14 78 views
0

是否可以在反彙編過程中將gdb顯示偏移量設置爲負數?如何使gdb在拆卸過程中顯示負數

0x08048394:MOV DWORD PTR [EBP-4],爲0x0

但是,當我

舉例來說,我有一本書,表演(從它們的功能應該拆卸轉儲)工作運行該代碼,並使用gdb拆機命令,我得到:

0x08048394:MOVL $爲0x0 0xfffffffc(%EBP)

我大概使用相同的編譯器和環境爲作者(因爲它來作爲包括CD上的虛擬機鏡像)。那麼,爲什麼它在展示方式上的差異,以及爲什麼說明書中的差異呢?我編寫了與作者相同的選項(只需gcc -g)

謝謝!

+1

您可以使用'set disassembly-flavor intel'將gdb切換到intel語法。對於你是否也會使用負偏移,我不知道,但是這兩個值是等價的,因爲'0xfffffffc'是'-4'的2的補碼。 – Jester

回答

2

對不起,回答我的問題...

我發現這是因爲GDB未設置爲英特爾的語法,這是什麼書使用。通過輸入命令'set disassembly intel',一切正常。我應該添加到.gdbinit文件中。