使用 x86 程序集,我需要定义一个填充了递增值的数组。目前,我将它定义为一个空数组,并在运行时通过循环它并设置我在每一步递增的值来填充它。这看起来像这样;
myArray DB 10 DUP (0)
...
xor ax, ax
xor bx, bx
mov cx, 10
initArray:
mov myArray[bx], ax
inc bx
add ax, 43
loop initArray
数组的增量值和大小在运行前都是已知的,所以我可以通过直接在代码中定义值来做到这一点,就像这样......
myArray DB 0, 43, 86, 129, ...
...但这需要一段时间,尤其是长数组。
现在来回答这个问题;我想知道是否有办法在汇编中创建这样的数组,比如 C 中的参数化宏?如果您愿意,等效于“#define myArray(x) (x*43)”。