汇编学习笔记 第五章

本文是汇编语言学习笔记,涵盖了顺序程序设计,包括键盘输入与输出;分支程序设计,讲解了CMP指令及各种条件转移指令;循环程序结构,介绍了LOOP系列指令和串操作指令。通过实例解析了如何使用这些指令实现特定功能。
摘要由CSDN通过智能技术生成

5.1 顺序程序设计

  1. 从键盘获取一个字节

    • 说明:存入AL
    • 代码
      MOV AH, 01H
      INT 21H
  2. 输出一个字节

    • 说明:输出DL的对应ASCII值
    • 代码
      MOV DL, *
      MOV AH, 02H
      INT 21H
  3. 输出字符串

    • 说明:输出偏移地址存入DX
    • 代码

      MOV DX, OFFSET LABLE
      MOV AH, 09H
      INT 21H

5.2 分支程序设计

  1. CMP的详细解释

    • ZF标志位

      • ZF = 1:DST = SRC
      • ZF = 0:DST != SRC
    • CF标志位(无符号数

      • CF = 0 且 ZF = 0:DST > SRC
      • CF = 1:DST < SRC
    • OF标志位(带符号数

      • OF = 0 且 SF = 0:DST > SRC
      • OF = 0 且 SF = 1:DST < SRC
      • OF = 1 且 SF = 0:DST < SRC
      • OF = 0 且 SF = 1:DST > SRC
    • 单标志条件转移指令

      • JC/JNC
      • JZ/JNZ:结果为0/不为0
      • JS/JNS:结果为负/为正
    • 无符号数条件转移指令

      • JA/JNBE:A > B
      • JAE/JNB:A >= B
      • JB/JNAE:A < B
      • JBE/JNA:A <= B
    • 带符号数条件转移指令

      • JG/JNLE:A > B
      • JGE/JNL:A >= B
      • JL/JNGE:A < B
      • JLE/JNG:A <= B
    • CX寄存器条件转移指令

      • JCXZ/JECX:CX/ECX = 0 时转移
    1. OF = 0 的情况比较方便记忆,OF = 1的情况可以相反记忆
    2. JS是值为负时转移,应当特别关注
  2. SET*条件设置指令

  3. 跳转表

    • 方式:标号 + 跳转指令
    • 重要代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值