因为嵌入式系统学习需要,开始学习汇编语言
学习资料是B站的视频:汇编语言程序设计 贺利坚主讲 (P25)
一、LOOP功能与格式
- 功能:实现循环(计数型循环)
- 指令格式:
LOOP 标号
二、LOOP指令实例
以下是一个LOOP指令的实例
程序的功能是计算
2
12
2^{12}
212
assume cs: code
code segment
mov ax, 2
mov cx, 11
s: add ax, ax
loop s
move ax, 4c00h
int 21th
code ends
end
CPU执行LOOP指令时,要进行的操作 (LOOP指令默认会使用cx寄存器)
- 赋值 (cx) = (cx - 1)
- 判断 cx 中的值:
不为零则转至标号处执行程序;
为零就向下继续执行
三、LOOP指令执行的要求
- cx 中要提前存放循环次数,因为 cx 影响着LOOP指令执行的结果
- 要定义一个标号
四、用LOOP指令实现乘法的例子
五、总结
LOOP指令是汇编语言进行循环操作的指令,要注意的是LOOP指令会默认使用 cx 寄存器,所以在使用LOOP时要提前给 cx 一个值