数学指令
INC和DEC
- 分别执行增加1和减少1的操作。
ADD
- 该指令有两个操作数,相加后的结果存放到第一个操作数中。
ADDC 带进位的加法
- 两个操作数的和加上进位标志的值,结果存放到第一个操作数中。
SUB
- 和ADD相反,将第一个操作数减去第二个操作数,结果存放到第一个操作数中,
SBB
- 和ADC相反,计算两个操作数的差值,并且还要减去进位标志,结果存放到第一个操作数中。
MUL
- 无符号数的乘法,只有一个操作数,另一个操作数是EAX,结果存放到EDX:EAX中。
IMUL
- 类似于MUL,有符号数的乘法,但允许多个操作数相乘
DIV和IDIV
- 类似于MUL和IMUL,DIV只有一个操作数,该操作数必须是无符号数,结果存放到EDX:EAX中。
- IDIV,如果是一个操作数,和DIV类似,但操作数需是有符号的,结果依旧保存在EDX:EAX中。如果是两个操作数,第一个操作数除以第二个操作数,结果存放到第一个操作数中。如果是三个操作数,第二个操作数除以第三个操作数,结果存放到第一个操作数中。
XADD
- 交换并相加,XCHG和ADD两个指令的组合
NEG
- 将操作数的符号取反,一个32位的16进制数,用NEG操作以后,结果就会取反。