Я пытаюсь запустить процедуру, которая отображает N членов последовательности Фибоначчи в шестнадцатеричном (с N = 30), и когда я запускаю свой код, я не получаю отображение шестнадцатеричных чисел, но я получаю сообщение «Проект.exe (процесс 15848) завершен с кодом 0 ". Может кто-нибудь помочь мне и объяснить, почему я получаю это сообщение вместо 30 шестнадцатеричных чисел? Спасибо! Я использую Visual Studio 2019 в Windows 10.
Вот мой код:
; Create a procedure that produces N terms of a Fibonacci sequence in hexadecimal
INCLUDE Irvine32.inc
.data
fibArray DWORD 0h, 01h ; F0 = 0 and F1 = 1
.code
main proc
mov ecx, 30 ; Number of values wanted
mov edx, 0h
mov ebx, 1h
mov esi, 8; fibarray[0] = 0, fibarray[4] = 1, so fibarray[8] = fibarray[0]+fibarray[1]
sub ecx, 1; Because indexing starts at 0 and ecx is that amount of values we want
call Fibonacci
;DumpMem register parameters fulfilled
mov esi, OFFSET fibArray
mov ecx, LENGTHOF fibArray
mov ebx, TYPE fibArray
call DumpMem
exit
main endp
; Fibonacci procedure
Fibonacci proc
L1:
mov eax, edx
add eax, ebx
mov fibArray[esi], eax
mov edx, ebx
mov ebx, eax
add esi, 4
loop L1
ret
Fibonacci endp
end main