问题很简单。 我想知道在程序中声明变量是否可行。 比如这样:
SAMPLE PROC NEAR
; PROC BODY
RET
VARIABLE DW 0000H
SAMPLE ENDP
我不认为这应该是一个错误。由于RET最终可用。 我真正想做的是拥有PROC所需的常量数组。某种查找表。
如果不合法,我想知道原因。
答案 0 :(得分:3)
程序界限在装配中几乎毫无意义。如果变量在ENDP之前或之后,则无关紧要。所以是的,只要你不尝试将变量内容作为代码执行,语法就可以了。但这里有一个更深层次的问题。
保护模式系统(Windows,Linux)通常使代码段只读;试图写入这样的变量会使程序崩溃。您必须使用数据部分或堆栈。
在DOS下,没关系。