微机原理与接口技术-指令

本文详细介绍了微机原理中的各种指令,包括数据传送指令如通用、累加器、地址和标志传送,算术运算指令如加、减、乘、除,位运算指令如逻辑和移位,串操作指令,控制转移指令如无条件、条件转移及循环控制,以及处理器控制指令等。
摘要由CSDN通过智能技术生成

上级目录

目录

指令分类

数据传送指令

通用数据传送指令

累加器专用传送指令

地址传送指令

标志传送指令

数据类型转换指令

算数运算指令

加法指令

减法指令

乘法指令

除法指令

十进制调整指令

位运算指令

逻辑运算指令

移位指令

循环移位指令

串操作指令

基本串操作指令

重复前缀指令

控制转移指令

无条件转移指令(长转移)

条件转移指令(短转移, -128~127的距离内)

循环控制指令

过程调用与返回指令

中断指令

处理器控制指令

标志位操作指令

外部同步指令


指令分类

  • 数据传送指令

    通用数据传送指令

    MOV. XCHG, PUSH, POP

     

    累加器专用传送指令

    XLAT, IN, OUT

     

    地址专用传送指令

    LEA, LDS, LES

     

    标志传送指令

    LAHF, SAHF, PUSHF, POPF

     

    数据类型转换指令

    CBW, SWD

    算数运算指令

    加法指令

    ADD, ADC, INC

     

    减法指令

    SUB, SBB, DEC, CMP, NEG

     

    乘法指令

    MUL, IMUL

     

    除法指令

    DIV, IDIV

     

    十进制调整指令

    DAA, DAS, AAA, AAS, AAM, AAD

    位运算指令

    逻辑运算指令

    NOT, AND, TEST, OR, XOR

     

    移位指令

    SHL, SHR, SAL, SAR

     

    循环移位指令

    ROL, ROR, RCL, RCR

    串操作指令

    基本串操作指令

    MOVS(B/W), LODS(B/W), STOS(B/W), CMPS(B/W), SCAS(B/W)

     

    重复前缀指令

    REP, REPE/REPZ, REPNE/REPNZ

    控制转移指令

    无条件转移指令

    JMP

     

    条件转移指令

    Jcc, JCXZ

     

    循环控制指令

    LOOP, LOOPZ/LOOPE, LOOPNZ/LOOPNE

     

    过程调用与返回指令

    CALL, RET

     

    中断指令

    INT, INTO, IRET

    处理器控制指令

    标志位操作指令

    CLC, STC, CMC, CLD, STD, CLI, STI

     

    外部同步指令

    HLT, WAIT, ESC, LOCK, NOP

数据传送指令

  • 通用数据传送指令

    • 助记符

      全称

      指令名称

      格式

      操作

      页码

      MOV

      move

      传送指令

      MOV dest, src

       

      P42

      XCHG

      exchange

      数据交换指令

      MOV dest, src

       

      P43

      PUSH

      push

      进栈指令

      PUSH src

      SP<=(SP-2)

      (SS:SP)<=源操作数

      P44

      POP

      pop

      出栈指令

      POP dest

      目标操作数<=(SS:SP)

      SP<=(SP+2)

      P44

  • 累加器专用传送指令

    • 助记符

      全称

      指令名称

      格式

      操作

      页码

      XLAT

      translate

      换码指令

      XLAT

      XLAT 表格首地址

      AL<=[BX+AL]

      P44

      IN

      input

      输入指令

      IN AL, I/O端口地址

      IN AX, I/O端口地址

      IN AL, DX

      IN AX, DX

      AL<=[0~FFH]

      AX<=[0~FFH]

      AL<=[DX]

      AX<=[DX]

      P45

      OUT

      output

      输出指令

      OUT I/O端口地址, AL

      OUT I/O端口地址, AX

      OUT DX, AL

      OUT DX, AX

       

      P46

  • 地址传送指令

    • 助记符

      全称

      指令名称

      格式

      操作

      页码

      LEA

      load effective address

      取有效地址指令

      LEA r16, [m16]

      r16<=(m16)

      P46

      LDS

      load DS

      地址指针装入DS指令

      LDS r16, [m32]

      r16<=(m15~0)

      DS<=(m31~16)

      P46

      LES

      load ES

      地址指针装入ES指令

      LES r16, [m32]

      r16<=(m15~0)

      ES<=(m1~16)

      P46

  • 标志传送指令

    • 助记符

      全称

      指令名称

      格式

      操作

      页码

      LAHF

      load AH from flag

      取标志指令

      LAHF

      AH<=(FR7~0)

      P46

      SAHF

      save AH from flag

      置标志指令

      SAHF

      (FR7~0)<=AH

      P47

      PUSHF

      push flag

      标志入栈指令

      PUSHF

  • 8
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值