欢迎关注博主的公众号:薛定谔的小鱼儿
loop指令为循环指令,所有的循环指令都是短转移,在对应的机器码中包含转移的位移,而不是目的地址,对IP的修改范围是:-128——127
指令格式:
loop 标号
操作:
(1)(cx)=(cx)-1
(2)if (cx)!=0 (IP)=(IP)+8位位移
实例(利用loop指令实现在内存2000H段中查找第一个值为0的字节,找到后,将它的偏移地址存储在dx中)
assume cs:code
code segment
start : mov ax,2000H
mov ds,ax
mov bx,0
s: mov cl,[bx]
mov ch,0
inc cx
inc bx
loop s
ok: dec bx
mov dx,bx
mov ax,4c00H
int 21h
code ends
end start