En essayant de faire une boucle qui calcule le premier nombre 10 en nombre Fibonacci. J'utilise "loop" au et du code, et cela ne fonctionne pas.La boucle d'assemblage ne fonctionne pas
xor cx, cx
mov cx, 8
mov bx, offset Array
mov [byte ptr bx], 0
mov [byte ptr bx+1], 1
mov bx, 1
Fibo:
inc bx
mov al, [byte ptr bx-1]
mov [byte ptr bx], al
mov al, [byte ptr bx-2]
add [byte ptr bx], al
loop Fibo
Vous devriez éviter 'loop'. Il est lent, et utilise implicitement '[r/e] cx', ce qui signifie qu'en mode 32 ou 64 bits, le code que vous avez posté pourrait boucler beaucoup plus que prévu. – EOF
Voir aussi http://stackoverflow.com/questions/32659715/assembly-language-x86-how-to-create-a-loop-to-calculate-fibonacci-sequence –