哦,我得同時下編譯下面的內聯彙編代碼(與-fasm塊)GCC另一個錯誤:GCC內聯彙編錯誤:沒有這樣的指令:`STOSD」
_asm
{
mov ecx, esi
shr ecx, 2
rep stosd
};
GCC瞭解其他STOS說明,爲什麼不會它接受STOSD ???
哦,我得同時下編譯下面的內聯彙編代碼(與-fasm塊)GCC另一個錯誤:GCC內聯彙編錯誤:沒有這樣的指令:`STOSD」
_asm
{
mov ecx, esi
shr ecx, 2
rep stosd
};
GCC瞭解其他STOS說明,爲什麼不會它接受STOSD ???
當您使用intel語法時,只需要輸入顯式版本的STOS
命令:REP STOS DWORD PTR:[EDI]
。
和gcc下的iirc,stosd
稱爲stosl
。
謝謝! REP stosl很棒:) – Ryan 2011-06-02 09:15:41
解決此問題的另一種方法是告訴gcc使用intel彙編語法「-masm = intel」。
您使用哪種版本的編譯器? – ColWhi 2011-06-02 07:31:44
還有什麼錯誤? – ColWhi 2011-06-02 07:33:46
蘋果GCC 4.2.1,錯誤是沒有這樣的指令:'stosd'... – Ryan 2011-06-02 09:15:10