如何在DEV C 裡嵌入彙編

2021-08-26 11:38:32 字數 854 閱讀 4690

呵呵,這方面的資料很多,但是東是東一鱗西一爪的。這篇也算我自己的乙個小總結吧!

在dev c++裡使用內聯彙編的格式不同於vc的,這一點需要注意:

vc裡採用的是intel的格式,而dev c++採用的是at&a的彙編格式。

如下例:

#include

int main()

這個可以在vc下編譯通過,但用dev c++則編譯出錯,原因就在內聯的彙編!如果需要轉移到dev c++下,則應將那句彙編更改為:

__asm__("int $3");

完整的如下:

#include

int main()

在at&a裡,引用值需要前加"$"標記,而且引用暫存器時也需要加乙個字首"%",如:

mov $789,%eax

另外,不可以直接引用變數,而只能引用全域性變數,同時在引用時,需要在其前加一下劃線"_",另外就是運算元的方向也與intel的語法相反,如:

mov $789,%eax //**********===是把789賦值給eax

其方向是: operator1------------------->operator2

而在intel下則是反過來的:operator1<-------------------operator2

乙個完整的示例如下:

#include

int a;

int main()

//這裡大家也應該注意到了,對於__asm__與__asm標籤是不區分的!同樣適用!!

當然,如果彙編的語句較多,可以用乙個標記來標記,如:

__asm(

"mov $123,%eax;\

mov %eax,_a"

);

如何在dosbox裡進行彙編debug

點開dosboxan安裝資料夾裡的圖中檔案,在檔案末尾加入如下 mount c c dos 掛載驅動器 path path masm 新增路徑 c 轉到e盤 cd asm 進入asm資料夾 執行dosbox,介面如下 總的來說除錯有以下幾類 r命令檢視 改變cpu暫存器的內容 d命令檢視記憶體中的內...

C C 中如何嵌入彙編

c c 中嵌入彙編的方法是使用 asm 在花括號中就可以寫彙編 了。然後,之前可見的變數在彙編中均可見。以下是乙個簡單的例子,將hello world中的每個字元加上0x20後再輸出 include includeint main d count 0 printf s n d return 0 執行...

如何在VC中嵌入IE

一 需要在你的程式中嵌入ie瀏覽器的視窗。有兩種實現方法,其一,新增chtmlview的視類 其二,新增ie瀏覽器的activex控制項。其實不管用什麼方法,除了函式名稱稍有區別外,它們最終都呼叫了微軟的iwebbrowser2的介面。二 方法和步驟 1.建立乙個對話窗形式的mfc應用程式,注意在導...