使用'loop'会导致无限循环

时间:2011-06-18 14:16:39

标签: assembly

我只是想尝试最简单的循环组装,对于前四个循环,它似乎工作正常。但是在前四个循环之后,它会进入一个无限循环。

.data
    loop_count1 DWORD 4

.code
main PROC
    mov ecx, loop_count1
loop11:
    loop loop11 
call dumpmem
call crlf
exit
main ENDP
END main

任何人都知道为什么?

编辑:抱歉,循环不是问题。调用dumpmem似乎是个问题,但之前我在其他程序中使用了同样的东西,所以我仍然不确定我做错了什么。

1 个答案:

答案 0 :(得分:1)

这是一个非常旧的时间,当我看到汇编程序,所以我不能给你专业的答案:)我认为循环后的ecx变为等于0.而且很可能dumpmem不能使寄存器ecx为零。仅出于测试目的,您可以在调用dumpmem之前添加一行mov ecx, 1。还是无限循环?