8086的指令系统
可以分为以下几类:
数据传送指令
算术运算指令
逻辑运算指令
串操作指令
控制传送指令
处理器控制指令
第1页/共42页
常用符号介绍
AH 、AL、BH、BL、CH、CL、DH、DL 8位寄存器
AX 、BX、CX、DX、SP、BP、SI、DI 16位寄存器
SP 堆栈指针
IP(或PC) 指令指针
Flags 标志位
DI、 SI 目的和源变址寄存器
CS、DS、ES、SS 段寄存器
r 通用寄存器组(如AX 等或AL 等,取决
于操作数的长度确定)
a AX 或AL (取决于操作数的长度确定)
第2页/共42页
常用符号介绍
src,dst 源和目的操作数。所有下列的寻址方式都可用:
[BX+SI+n]
[BX+DI+n]
[BP+SI+n]
[BP+DI+n]
[SI+n]
[DI+n]
[BP+n]
[BX+n]
[n]
r
第3页/共42页
常用符号介绍
ADR(src) 源操作数的地址
[ ] 存储单元的内容(正常在数据段)
ES[ ] 附加存储器段的内容
OPRD 操作数
seg 段存储器(CS、DS、ES、SS)
im 立即数
n 8位
nn 16位
nnnn 32位
第4页/共42页
数据传送类指令
(MOV)
指令格式:MOV DOPD, SOPD;
操作:将SOPD内容赋给DOPD。
所有通用传送指令都不影响标志位。
第5页/共42页
MOV指令举例-1
CPU通用寄存器之间数据传送
MOV AL, BL
MOV DL, CH
MOV AX, DX
MOV CX, BX
立即数传至CPU内部的通用寄存器组
MOV CL, 4
MOV AX, 0FFA0H
MOV SI, 057BH
第6页/共42页
MOV指令举例-2
CPU通用寄存器与存储器之间的数据传送
MOV AL, BUFFER
MOV AX, [SI]
MOV [DI], CX
立即数到存储器的传送
MOV AL, 5
MOV WORD PTR[BX], 1005H
存储器与段寄存器之间的传送
MOV DS, [1000H]
MOV [BX], ES
第7页/共42页
注意:不能用MOV指令实现以下传送
存储器操作数之间不能直接传送
MOV [1000H] , [DI] 错
应改为
MOV AX , [DI]
MOV [1000H], AX
立即数不能直接送段寄存器
MOV DS,2000H 错
应改为
指令系统 微型计算机系统原理及应用PPT课件 来自淘豆网m.daumloan.com转载请标明出处.