文章目录
一、加法
1、语法:
add OPRD1, OPRD2
2、作用:
OPRD1 = OPRD1 + OPRD2
将OPRD1加上OPRD2保存在OPRD1中
3、限制:
1、两操作数不允许同时为内存
2、立即数不能做OPRD1
4、补充:
add操作结果会影响到标志寄存器
二、减法
1、语法:
sub OPRD1, OPRD2
2、作用:
OPRD1 = OPRD1 - OPRD2
将OPRD1减去OPRD2保存在OPRD1中
3、限制:
1、两操作数不允许同时为内存
2、立即数不能做OPRD1
三、乘法(无符号)
1、语法:
mul OPRD1
2、作用:
[DX, AX] / AX = AX/AL * OPRD1
做8位乘法时
AL为被乘数
乘积保存在AX中
做16位乘法时
AX为被乘数
乘积低16位保存在AX中,乘积高16位保存在DX中
3、补充:
mul指令会影响到标志寄存器
四、除法(无符号)
1、语法
div OPRD1
2、作用
16位除法
AL = AX 除以 OPRD1…AH
除数OPRD1为8位时
默认ax存储被除数
商保存在al中
余保存在ah中
32位除法
AX = [DX, AX] 除以 OPRD1…DX
除数OPRD1为16位时
默认ax存储被除数低16位,dx存储被除数高16位
商保存在ax中
余保存在dx中
五、异或
1、语法
xor OPRD1, OPRD2
2、作用
OPRD1与OPRD1按位异或,结果保存在OPRD1中
3、限制
1、两操作数长度必须相同
4、补充
异或结果会影响标志寄存器