我正在使用emu8086,www.emu8086.com - 并具有以下代码:
data segment
five equ 5
VET db 5 dup (1,2,3,4,5)
w2 db 0
ends
stack segment
dw 128 dup(0)
ends
code segment
start:
mov ax,data
mov ds, ax
mov es,ax
;sum
xor AX,AX
xor BX,BX
xor CX, CX
mov cl,five
mov si,0
sum:
add al,vet[si]
inc SI
dec cx
loop sum
mov w2,al
;end sum
ends
end start
问题是当 CX 达到 0 时,求和循环应该停止并且求和的结果被保存到 w2 变量中。
由于某种奇怪的原因,这不会发生在程序永远循环中。
我的代码有什么问题?有人能帮帮我吗?