1.2_汇编语言(loop)

——《编程语言》


1. loop

1.1 定义

CPU执行loop指令的时候,要进行两步操作:

1 (cx) = (cx) - 1
2 判断cx中的值,不为零则转至标号处执行程序,如果为零则向下执行

其中,cx为CX寄存器。n

1.2 编程案例

编程计算2^12的值

assume cs:code
code segment
mov ax,2

mov cx,11
s: add ax,ax
loop s

mov ax,4c00h
int 21h
code ends
end

分析上述程序:
在汇编语言中,标号代表一个地址,s即是此程序中的标号,在loop : s语句中执行以下步骤:

1 (cx) = (cx) - 1
2 判断cx中的值,不为0则转至标号s所标识的地址处执行(这里的指令是add ax,ax),如果为零则执行下一条指令(下一条指令是mov ax,4c00h)。

此处add ax,ax指令共执行了11次。
这里要注意的是,loop s 下面的语句是用来返回8086系统的cmd进程中的,与此处的知识点无关,如果有兴趣可以找时间研究。

2. 实验

  1. 编程,向内存0:200~0:23F依次传送数据0~63(3FH)。
  1. 实现上述功能,且不能超过9条指令,且指令中应该包括mov ax,4c00h 和 int 21h
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...
    Gibbs基阅读 37,387评论 8 114
  • # 常见汇编代码 # 1. 编写程序:比较AX,BX,CX中带符号数的大小,将最大的数放在AX中 code...
    喝豆腐脑加糖阅读 2,683评论 0 0
  • 计算机通过执行指令序列来使机器得以工作,所以对于每一系列的计算机都有指定的一组指令集供计算机使用,这组指令...
    未来科技工作室阅读 8,144评论 1 10
  • 王爽汇编全书知识点大纲 第一章 基础知识 机器语言 汇编语言的产生 汇编语言的组成 存储器 cpu对存储器的读写 ...
    2c3ba901516f阅读 2,453评论 0 1
  • 这个程序的核心目的是:试验大地址的读写,在保护模式下面寻址空间可达4GB,实模式下只能寻址1MB。(why:为什么...
    王侦阅读 847评论 0 0