8086处理器的指令系统

本文详细介绍了8086处理器的指令系统,包括数据传送、算术运算、逻辑运算、串操作、控制转移及处理器控制等六类指令。这些指令涉及了基本的数据处理、内存操作、外设交互、流程控制和处理器状态管理,是理解8086处理器核心功能的关键。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

8086处理器的指令系统包括六种类型:

  • 数据传送指令
  • 算术运算指令
  • 逻辑运算指令
  • 串操作指令
  • 控制转移指令
  • 处理器控制指令
1.数据传送指令
指令作用
MOV传送
PUSH、POP堆栈操作
XCHG交换
IN、OUT外设输入输出
XLAT转换/换码/翻译
LEA(Load Effective Address)、LDS、LES地址传送
PUSHF/POPF、LAHF/SAHF标志传送
2.算术运算指令
指令作用
ADDADC、AAA、DAA加法
INC+1
SUBSBB、AAS、DAS减法
DEC-1
CMP比较
NEG求补(按位取反+1)
MUL、IMUL、AAM乘法
DIV、IDIV、AAD除法
CBWCWDCDQ累加器有符号扩展
MOVZX无符号扩展
MOVSX无符号扩展
3.逻辑运算指令(位操作)
指令作用
NOT求反
AND与运算
OR或运算
XOR异或运算
TEST位测试,同AND,不修改操作数
SHL、SHR、SAL、SAR逻辑、算术移位
ROL、ROR、RCL、RCR循环移位、带进位循环移位
  • SHL(Shift Left):逻辑左移 SHR:逻辑右移

  • SAL(Shift Arithmetic Left):算术左移 SAR:算术右移

  • RCL带进位循环移位时,左移一位将MSB赋值给进位标志位CF,将CF赋值给LSB;RCR同理。
    带进位循环左移(图片来源于网络)

  • 而ROL循环左移时,将MSB同时赋值给CF和LSB;ROR同理。
    循环左移(图片来源于网络)

4.串指令操作
指令作用
MOVSx串传送(拷贝)
CMPSx串比较
SCASx串扫描(搜索某元素)
LODSx取字符串
STOSx存字符串

操作时需要使用的寄存器:SI(源变址寄存器)、DI(目的变址寄存器)、CX(计数器)、DF(FLAGS 方向标志)。

5.控制转移指令
指令作用
CALL、RET子程序调用、返回
JMP无条件转移指令(跳转)
JZ/JNZ/JE/JNE(零转移/相等跳转)、JC/JNC(进位转移)、JO/JNO(溢出转移)、JS/JNS(根据符号位跳转)、JP/JNP/JPE/JNPE(根据奇偶标志跳转)按标志位转移
JA(above大于跳转)、JAE(大于等于)、JB(below小于)、JBE(小于等于)无符号数比较转移
JG(greater)、JGE、JL(less)、JLE有符号数比较转移
LOOP循环(依赖CX)
LOOPE(equal)、LOOPNE条件循环
JCXZCX=0跳转
INT n (interrupt)中断调用
IRET中断返回
INTO(interrupt overflow)溢出中断指令
6.处理器控制指令
指令作用
CLCCF=0
CMCCF取反
STCCF=1
STDDF=1
CLDDF=0
STIIF=1
CLIIF=0
HLT处理机暂停
WAIT等待状态
ESC将数据传送给FPU
LOCK保证总线的控制
NOP无操作,用于延时
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值