之前的 程序都是顺序执行,现在我们看看,如果做到循环,循环需要一个计数器来记录次数,ECX就是这个功能。LOOP用来跳转到 标号,当ECX=0时,循环结束

;test_09


INCLUDE irvine32.inc
INCLUDELIB Irvine32.lib
INCLUDELIB KERNEL32.LIB



.data
arrayA WORD 10h,20h,30h,40h


.code
main PROC
	mov edi ,OFFSET arrayA
	
	mov ecx,LENGTHOF arrayA
	
	mov eax,0
	
@@:
	add eax,[edi]
	add edi,TYPE arrayA
	
	loop @B
	call DumpRegs
	exit
main endp
END main


程序中几个关键的 操作符我们都学过了,@@ 是匿名标号,@B 代表返回到前面最近的 标号。

posted on 2011-11-06 13:11  锅子  阅读(436)  评论(0编辑  收藏  举报