8086指令系统

8086指令系统


数据传送指令:

1. 通用数据传送:

指令名称指令格式功能
MOVMOV des,sou(sou)–>(des)
XCHGXCHG des,sou交换数据
PUSHPUSH sou入栈
POPPOP sou出栈

2. 累加器AX传送

指令名称指令格式功能
XLATXLATDS:[AL+BX] –> AL
ININ des,sou输入指令
OUTOUT des,sou输出指令

3. 地址传送:

指令名称指令格式功能
LEALEA des,sousou的偏移地址–>des
LDSLDS des,sousou32位,sou高16位–>DS,sou低16位–>des
LESLES des,sousou32位,sou高16位–>ES,sou低16位–>des

4. 标志传送:

指令名称指令格式功能
LAHFLAHF标志位低8位–>AH
SAHFSAHFAH–>标志位低8位
PUSHFPUSHF标记寄存器人栈
POPFPOPF标记寄存器出栈

5. 数据类型传送:数据类型转换 byte到word ,word到double word

指令名称指令格式功能
CBWCBW(AL)>=80h AH=FFH 否则 AH=00H
CWDCWD(AX)>=8000h DX=FFFFH 否则 DX=0000H

算术运算指令:

减法指令

指令名称指令格式功能
NEGNEG desdes取反加一(求补码操作)

乘法指令

指令名称指令格式功能
MULMUL src无符号乘法:src为byte:AL*(src)–> AX ,src为word:AX*(src)–> DX,AX
IMULIMUL src有符号乘法:src为byte:AL*(src)–> AX ,src为word:AX*(src)–> DX,AX

除法指令

指令名称指令格式功能
DIVDIV src无符号乘法:src为byte:AL*(src)–> AX ,src为word:AX*(src)–> DX,AX
IDIVIDIV src有符号乘法:src为byte:AX /(src)–> AL…AH ,src为word:DX,AX /(src)–> AX…DX

十进制调整指令

指令名称指令格式功能注意
DAADAA AL低四位>9或AF=1:AL自加6H修正,AF=1。AL高四位>9或CF=1:AL自加60H修正,CF=1加法之后用,压缩码
DASDASAL低四位>9或AF=1:AL自加6H修正,AF=1。AL高四位>9或CF=1:AL自加60H修正,CF=1减法之后用,压缩码
AAAAAA 只管AL低四位加法之后用,非压缩码
AASAAS只管AL低四位减法之后用,非压缩码
AAMAAMAL除10,商放在AH中,余数放AL,MUL之后,AL中乘积调整为非压缩的BCD码,结果放于AX紧跟MUL之后用,ASCII码
AADAADAH寄存器的内容*10+AL的内容,结果送到AL,同时AH清零DIV之前对被除数处理,ASCII码

位运算指令:


串操作指令:


控制转移指令:


处理器控制指令:


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值