语雀原文链接
文章目录
- 1、loop示例
- p
- g
1、loop示例
- 编写loop.asm
assume cs:code
code segmentmov ax,2mov cx,11
s: add ax,axloop smov ax,4c00hint 21h
code ends
end
- 编译链接
C:\>masm c:\loop;
Microsoft (R) Macro Assembler Version 5.00
Copyright (C) Microsoft Corp 1981-1985, 1987. All rights reserved.51798 + 464746 Bytes symbol space free0 Warning Errors0 Server ErrorsC:\>link loop;
Microsoft (R) Overly Linker Version 3.60
Copyright (C) Microsoft Corp 1981-1985, 1987. All rights reserved.LINK : warning L4021: no stack segment
- debug调试loop.exe
- loop s执行后会把IP重新设置位0006,也就是ADD AX,AX,从而实现循环
- 最后执行程序退出
p
- 上述调用过程要多次-t,比较麻烦,可以使用p指令,debug就会自动重复执行循环中的指令,直到CX=0为止
g
- 上述循环过程也可以通过g命令来实现,g 000A 表示程序直接执行到IP=000A的位置