아래 코드는 배열에 있는 정수들 중 최소값을 찾아 출력해주는 코드입니다.
이번에 작성을 한건데 잘 작동되다가 오류를 일으킵니다
예를들면 배열에 0이 두개다 하면 뜬금없이 +11630 이라는 숫자가 출력되고
혹은 음수를 넣었을때도 +11630이 출력되고
지금은 어떤 숫자를 넣던간에 계속 0만 출력이 되네요 -_-
어셈블 초보에게는 아래 코드는 정당하다고만 생각이 됩니다.
어디가 문제인걸까요 ㅠㅠ
INCLUDE Irvine32.inc
.data
intArray WORD 5,4,11,12,13,1,5,5,9
.code
main PROC
mov ebx, OFFSET intArray
mov ecx, LENGTHOF intArray - 1
L1:
mov edx, [ebx]
add ebx, 2
cmp WORD PTR [ebx], dx
jB found
loop L1
jmp quit
found:
movsx eax, WORD PTR [ebx]
jmp L1
quit:
call WriteInt
call Crlf
exit
main ENDP
END main