汇编基础04:循环

Catalogue
  1. 1. 汇编基础04:循环

汇编基础04:循环

循环控制指令:LOOP

格式:LOOP 标号

功能:(CX) <–(CX)-1,(CX)<>0,则转移至标号处循环执行,直至(CX)=0,继续执行后续指令

LOOP执行一次,cx-1,如果cx=0,则会无限循环

示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
.586
.MODEL flat, stdcall
.code
main proc
mov eax ,1
mov ebx ,1
mov ecx ,3
s:
add eax ,ebx
loop s
mov eax ,eax
main ENDP
END main

练习:1+2+3+…+100

1
2
3
4
5
6
7
8
9
10
11
12
.586
.MODEL flat, stdcall
.code
main proc
mov eax ,0
mov ecx ,100
s:
add eax ,ecx
loop s
mov eax ,eax
main ENDP
END main

练习:1+2+4+8+….+2147483648(0x80000000)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
.586
.MODEL flat, stdcall
.code
main proc
mov eax ,1
mov ebx ,0
mov ecx ,32
s:
mov edx ,2
add ebx ,eax
mul edx
loop s
mov eax ,eax
main ENDP
END main