2012-03-05 35 views
2

我知道編譯器會將c源代碼轉換爲程序集,然後轉換爲機器碼。我搜索了我能找到的每個編譯器設置,以及他們的網站,但我無法獲取它來生成程序集。此外,該網站指出Dev-C++使用AT組件,我是否也可以將其轉換爲英特爾?我如何獲得Dev-C++從c代碼生成intel程序集?

+2

開發-C++是不是一個編譯器 – Pubby 2012-03-05 03:29:38

+0

一般來說,C++編譯器在其工具鏈中有一個用於嵌入式彙編程序的彙編程序,這裏是__asm(「mov%ax,%dx」); //將AX移至DX'。通常沒有彙編輸出,它將是AT&T風格。在這種情況下,我會**將目標代碼反彙編到英特爾彙編程序。 – 2012-03-05 03:39:28

回答

4

Dev-C++似乎使用GCC。

你可以試試這個選項:gcc -S -masm=intel在這個問題回答說:How do you use gcc to generate assembly code in Intel syntax?

我不知道如何設置開發-C命令行選項+ +,但導遊可以很容易找到。

+0

該行會在哪裏輸入?這不是c語言,所以我認爲它不只是源文件的一部分,但我不知道何時何地將它鍵入到命令提示符中。 – skidup 2012-03-05 03:49:15

+1

@ user1248980 gcc也做C++(g ++)。您需要在IDE中找到指定編譯器選項的位置。這與你的來源無關。 – Pubby 2012-03-05 03:54:54

0
C:\Program Files (x86)\Dev-Cpp\MinGW32\bin>gcc -S -masm=intel try.cpp 

鍵入以下命令提示符(GCC的位置取決於你有安裝DEV-C++),它會生成彙編文件,在我的情況try.s

相關問題