0
我是裝配新手並試圖弄清楚如何執行基本的寄存器功能,例如添加,乘法和分隔寫入32位x86程序。目前,我正在編寫計算「(5 + 4)/(10 * 3)」輸出的程序。計算完這個輸出後,我試圖以狀態碼的結果退出。我的代碼是目前:試圖乘法和除法時裝配「錯誤:垃圾」
.global main
.type main @function
main:
movl $5, %ebx
movl $4, %ecx
addl %ebx, %ecx
movl %ecx, %eax
movl $10, %ebx
movl $3, %ecx
divl %ebx:%ecx
mull %eax:%ecx
push %ecx
call exit
我目前得到的錯誤:
e2.s: Assembler messages:
e2.s:19: Error: junk `:%ecx' after register
e2.s:20: Error: junk `:%ecx' after register
,當我嘗試編譯代碼:gcc -m32 -o e2 e2.s
我已經看了看Page 1,和Page 2,和「從頭開始編程」一書,但我無法弄清楚這個問題。
恩,你鏈接的那個有答案。 「idivl只有一個參數。」 – 2014-11-03 00:16:24