我想使用平面汇编程序(FASM)测试一个小的汇编程序,但是在使用宏时我遇到了问题:
scount = 0
smult = 320
label screenoff word
rept 200
dw smult*scount
scount = scount + 1
endm
任何人都可以帮我使用平板汇编程序吗?
它应该创建一个包含200个单词的数组(在标签中定义的单词,使用rept
指令定义200次)。
我得到Error: unexpected characters when trying to compile in flat assembler vers. 1.71.22 (editor vers 3.11 beta 3, interface version 0.97.01)
。
第dw smult*scount
行突出显示错误。
赞赏指向帮助的指针。
答案 0 :(得分:1)
您缺少实际启动宏定义的第一行 在手册中查找!
... <-- Missing here
scount = 0
smult = 320
label screenoff word
rept 200
dw smult*scount
scount = scount + 1
endm
修改
变式1 - 与SetupArray200
macro SetupArray200 { times 200 dw (%-1)*320 }
变体2 - 与SetupArray200
macro SetupArray200
{
repeat 200
dw (%-1)*320
end repeat
}
带参数的变体3 - 与SetupArray 200,320
macro SetupArray scount,smult
{
repeat scount
dw (%-1)*smult
end repeat
}