我正在尝试用10个数字填充一个数组,1到10.在下面的loopArray中,我加载一个32位DWORD大小的数组,其中包含32位寄存器ebx,每次迭代递增1。在PrintLoop2中,我正在使用数组的每个元素加载ecx,以便我可以在visual studio中看到这些值,并确认我的数组中填充了值1-10。我的问题是,ecx正在展示像" 04030201"在第一个循环和" 05040302"在第二,等等。我做错了什么?
.586
.MODEL FLAT
.STACK 4096
n=10
.data
prime DWORD n DUP(?)
.code
main PROC
mov ebx, 1
loopArray:
mov prime[ebx], ebx
cmp ebx, n
inc ebx
jb loopArray
mov ebx, 1
mov ecx, 0
PrintLoop2:
mov ecx, prime[ebx]
cmp ebx, n
inc ebx
jb PrintLoop2