我在做什么错?给出错误的值后,此代码最多只能生成准确的斐波那契数列,直到13。
输出
1, 1, 2, 3, 5, 8, 13, 29, 37
应在21
之后而不是13
之前29
代码
org 100h
.data
num dw 0
.code
main proc
mov ax, @data
mov ds, ax
mov cx, 15
mov bx, 1
mov si, offset num
fibonacci:
mov dx, [si] ;dx=0,1,1,2,3
add [si], bx ;num=1,1,2,3,5
mov bx, dx ;bx=0,1,1,2
mov di, [si]
add si,2
mov [si], di
loop fibonacci
main endp
end main
ret