2010-09-05 43 views
0

我已經編譯我寫生成以下文件ASM:爲什麼這是一個無效的操作數?

; This code has been generated by the 7Basic 
; compiler <http://launchpad.net/7basic> 

; Uninitialized data 

     SECTION .bss 
v_0 resb 4 
v_4 resb 4 
v_8 resb 4 

; Code 

     SECTION .text 
push 1 
pop eax 
mov v_0, eax 
push 2 
pop eax 
mov v_4, eax 
mov eax, v_0 
push eax 
mov eax, v_4 
push eax 
pop ebx 
pop eax 
imul eax,ebx 
push eax 
pop eax 
mov v_8, eax 

當我嘗試編譯它,我得到以下錯誤:

test.asm:16: error: invalid combination of opcode and operands
test.asm:19: error: invalid combination of opcode and operands
test.asm:29: error: invalid combination of opcode and operands

這真的沒有因爲根據NASM文檔,我被允許:

MOV    mem_offs, reg_eax    386

爲什麼我不能執行此操作?

回答

2

你需要方括號解引用指針:

mov [v_0], eax 
+0

謝謝!這是問題,好吧。 – 2010-09-05 04:20:20