zoukankan      html  css  js  c++  java
  • 8086汇编 Loop 指令

    8086汇编 Loop 指令

    功能:实现循环(计数型循环)

    • 指令的格式
    • loop 标号

    CPU 执行loop指令时要进行的操作:

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

    用cx和loop 指令相配合实现循环功能的三个要点:
      (1)在cx中存放循环次数;
      (2)用标号指定循环开始的位置;
      (3)在标号和loop 指令的中间,写上要循环执行的程序段(循环体)

    如果(cx)≠0,(IP)=(IP)+8位位移

    • 8位位移=“标号”处的地址-loop指令后的第一个字节的地址
    • 8位位移的范围为-128~127,用补码表示
    • 8位位移由编译程序在编译时算出

    案例

    循环说明

    • 1)赋值 ax = 2、cx = 11
    • 2)相加 ax = 4
    • 3)loop s 中 cx 值会 -1 由 11 变为 10
    • 4)转到 s 偏移地址(IP寄存器返回s偏移地址 ) 标记的 add ax ,ax
    • 5)ax = 8 -> 16 -> 32 -> ...
    • 6)知道 ax 为 0 结束循环
    ;10op指令示例程序
    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
  • 相关阅读:
    萨卡斯指法
    香港保险
    数据分析,了解行业
    数据分析师
    黑盒测试方法
    web系统的常用功能测试
    linux-磁盘问题
    mysql连表查询
    mysql模糊查询
    MySQL 数据类型
  • 原文地址:https://www.cnblogs.com/xiangsikai/p/12468362.html
Copyright © 2011-2022 走看看