我在NASM中遇到一个宏错误:'错误:解析器:预期的指令'

时间:2018-04-27 18:31:52

标签: assembly x86 nasm x86-16

我一直收到同样的错误:error: parser: instruction expected
我通过以下行获得此错误:

WSTRING 'MESSAGE'

我的代码是:

Bits 16  
call clear_screen  
WSTRING 'MESSAGE'  
jmp $   

%MACRO WSTRING 1  
     mov si, %1  
     call print  
%ENDMACRO   

我已经尝试过这个并且也无法工作:

Bits 16
MSG DB 'MESSAGE',0
call clear_screen
WSTRING MSG
jmp $

%MACRO WSTRING 1
    mov si, %1
    call print
%ENDMACRO

1 个答案:

答案 0 :(得分:2)

您不能将文字字符串用作指令的操作数。你只能使用字符串的地址。这意味着,您需要指示汇编程序将该字符串放在某处,然后使用其符号地址。