Я использую массив для хранения своих значений, а затем использую вычитание для всех значений. Как и значения ввода: 1, 2, 3, 4, 5 Рассчитывается как: 1-2-3-4-5 = -13
Это мой код:
INCLUDE Irvine32.inc
.DATA
msg byte "Enter five integers= ",0
arr DWORD 5 dup(0)
.CODE
MAIN PROC
MOV edx, offset msg
call writestring
mov ecx,5
mov eax,0
mov edi, offset arr
input :
call readint
mov [edi],ax
add edi,4
LOOP input
mov edi,offset arr
mov eax, 0
mov ecx,5
sumadd:
sub ax,[edi]
add edi,4
LOOP sumadd
call crlf
call writeint
call readint
invoke ExitProcess,0
main endp
end main
номер ввода являются: 1,2,3,4,5 Но этот код выводится +65521
В чем проблема?