2011-06-20 143 views
3

我想在Windows上調試一些彙編代碼。對於32位代碼,我使用的是Ollydbg,但無法打開64位的exe文件。64位窗口彙編器調試

我也使用Visual Studio調試器嘗試,但我認爲堆棧以某種方式得到損壞,我無法弄清楚如何放置在程序入口斷點,所以這是行不通

那麼,有沒有任何免費程序的工作?

如果它的事項我使用NASM,然後GCC編譯器的exe的

+0

無論實用性本話題我也需要一個調試器。所以隨機我發現了一些:[FDBG](http://fdbg.x86asm.net/),[Visual DuxDebugger](http://www.duxcore.com/index.php/prod/visual-duxdebugger/overview )和[PEbrowseDbg64](http://www.smidgeonsoft.prohosting.com/pebrowse-pro-interactive-debugger.html)。雖然其中一個不如ollydbg。 – DitherSky

回答

2

爲什麼不給WinDbg的一個嘗試,通過MS和自由,here's the 64bit version其製成。

+0

以及我試過,並不能得到它的工作,我最終通過比較輸出到一個有效的C程序使用objdump -d –

+0

@jpalmer來解決問題:什麼部分不工作? – Necrolis

+0

@ jpalmer:如果你遇到問題,你可能會發現這個:http://www.nynaeve.net/?p=8 – Necrolis

1

Visual studion對於32位和64位窗口都有出色的調試器。 如果您使用的是nasm或yasm彙編程序,請在彙編程序上使用選項-gcv8。這會產生可與Visual Studio配合使用的調試信息。您必須在VS中創建一個包含C/C++和asm文件的項目。該ASM文件需要一個自定義生成規則看起來像: 的CommandLine = 「YASM -fwin64 -gcv8 -o $(InputName)的obj [材料]」 輸出= 「$(InputName)的obj」