一.循环
(一)
在汇编语言中循环结构需要有三个部分:循环初始,循环体和循环控制,下面分别介绍:
1.循环初始:在循环前的一些操作,如对ECX置数确定循环迭代次数,对需要用的寄存器置零等
2.循环体:就如高级语言中需要循环的代码
3.循环控制:判断是否满足循环条件,不满足则顺序执行
(二).两种基础循环
1.label ~~ loop label
循环ecx次,每次循环先进行ecx-1操作,当ecx为零时,结束循环
(注:label 可以随意改变命名,但需要前后一致)
相当于
DEC ECX ;ecx减一
JNZ label ;当zf标志位为0时跳转到label处循环
zf标志位为判断计算是否为零,为零则zf为1,反之,为0
2.label ~~ JECXZ label
循环条件:ECX=0
只有在ECX为零时,发生跳转循环
相当于:
CMP ECX,0;判断是否为零
JZ label ;当为零时跳转到label处