【发布时间】:2017-05-19 22:33:38
【问题描述】:
我想将数字放入长度为 10 的数组中,但每个数字都比最后一个数字大 1。
这意味着:myArray = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
我试过这个:
理想
模型小
堆叠 100h数据段
intArray db 10 重复 (0)
索引分贝 1代码段
开始:
mov 斧头,@DATA
mov ds, 斧头
循环数组:
mov al, [索引]
添加 [intArray+index], al ;这是问题
公司 [索引]
cmp [索引], 11
jb 循环数组
退出:
mov ax, 4c00h
整数 21 小时
结束开始
但是我无法将索引添加到[intArray + index],所以我尝试将它添加到[intArray+al],也不起作用。
如何每次都将索引添加到下一个数组的值?
【问题讨论】:
-
{add [intArray + al], al} 应该可以工作,为什么不呢?它编译了吗?
-
为什么要添加索引到任何东西?
MOV它在那里。你可能不得不使用BX来索引:mov bl,[index] ; loopArray: mov [intArray + bx],bl ; inc bl : cmp bl,11 : jb loopArray或类似的。 -
现在我的循环看起来像这样:' loopArray: mov bl, [index] ; mov [intArray+bl], bl ;公司 [索引] ; cmp [索引], 11 ; jb loopArray ' 还是不行。
-
是的,它确实可以编译。