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:错误:操作码和操作数的无效组合
test.asm:19:错误:操作码和操作数的无效组合
test.asm:29:错误:操作码和操作数的无效组合

这真的没有意义,因为根据 NASM 文档,我可以:

MOV mem_offs, reg_eax 386

为什么我不能执行这个操作?

4

1 回答 1

3

您需要方括号来取消引用指针:

mov  [v_0], eax
于 2010-09-05T04:16:58.787 回答