我正在浏览文档,其中有一些伪操作,它们是<input name='name' />
,DV
和LIST
。
XXX
说的像DV
,但与DC
一起使用时,我已经弄乱了,但是我没有注意到有什么不同,我尝试查找任何示例,但找不到任何东西。
EQM
和LIST
,我也不知道它们是如何工作的。
答案 0 :(得分:4)
DV
进行宏扩展。最好用一个例子来说明。
mymacro eqm 10 + ..
mylist dv mymacro 1, 2, 3
第一行定义符号mymacro
,它将用作宏。点号(..
)作为参数。
在第二行中,将宏应用于列表中的每个表达式。从左到右:
基本上,第二行等效于:
mylist dc 10 + 1, 10 + 2, 10 + 3
显然等同于:
mylist dc 11, 12, 13
这个例子很简单。当宏包含符号时,DV
可能更有用。
例如:
mylabel dc "ABCD"
mymacro eqm mylabel + ..
mylist dv mymacro 1, 2, 3
等效于:
mylabel dc "ABCD"
mylist dc mylabel + 1, mylabel + 2, mylabel + 3
LIST OFF
和LIST ON
影响将输出写入列表文件。
通常,源文件中的每一行都会写入列表文件; LIST OFF
禁止这样做。但是,错误消息仍将写入列表文件。
很明显,这仅在命令行上指定了列表文件(选项-l
或-L
)时有效。
据我所知,DASM没有伪值XXX
。
我猜您是在指the documentation的这一部分:
[label] XXX[.force] operand
XXX
只是一个占位符;它可以是您喜欢的任何助记符,例如lda
。
请参阅有关FORCE扩展的部分。