所以对于我的项目,我必须提示用户输入一堆负数,并找到这些数字的平均值,四舍五入到最接近的整数(例如-20.5将是-20)。 我的问题是如何使用div指令来执行此操作?每当我运行此代码时,它都可以正常工作,直到它到达除法部分。
INCLUDE Irvine32.inc
.data
;variable definitions
average SDWORD ?
user_number SDWORD ?
counter DWORD 0
sum SDWORD 0
.code
main PROC
startloop:
call readint
cmp eax, 0
jge end_loop
mov user_number, eax
inc counter
mov eax, user_number
add sum, eax
jmp startloop
endloop:
mov eax, sum
cwd
mov ebx, counter
div ebx
mov average, eax
main ENDP
END main
顺便说一句,我正在使用带有irvine32库的masm。任何帮助将不胜感激。