这些指令用于执行算术运算,例如加法,减法,乘法,除法等。在8086中,目标地址不必是累加器。
让我们看一下8086微处理器的算术指令。这里的D和S分别是目的地和来源。D和S可以是寄存器,数据或存储器地址。
操作码 | 操作数 | 描述 |
---|---|---|
加 | D,S | 用于将提供的字节加到字节/字加到字。 |
ADC | D,S | 用于加进位。 |
INC | d | 用于将提供的字节/字增加1。 |
AAA级 | ---- | 添加后用于调整ASCII。 |
DAA | ---- | 用于在加/减运算后调整小数。 |
潜艇 | D,S | 用于从字中减去字节/字中的字节。 |
SBB | D,S | 用于通过借位执行减法。 |
DEC | d | 用于将提供的字节/字减1。 |
NEG | d | 用于对提供的字节/字的每一位取反并加1/2的补码。 |
CMP | d | 用于比较2个提供的字节/字。 |
原子吸收光谱 | ---- | 减后用于调整ASCII码。 |
达斯 | ---- | 减后用于调整小数。 |
UL | 8位寄存器 | 用于将无符号字节乘以字节/逐字乘以。 |
IMUL | 8位或16位寄存器 | 用于将带符号的字节逐字节/逐字相乘。 |
美国汽车协会 | ---- | 乘法后用于调整ASCII码。 |
DIV | 8位寄存器 | 用于按字节分割无符号字或按字分割无符号双字。 |
IDIV | 8位或16位寄存器 | 用于按字节划分有符号的单词或按单词划分有符号的双单词。 |
AAD | ---- | 除法后用于调整ASCII码。 |
CBW | ---- | 用于用低字节的符号位副本填充单词的高字节。 |
CWD | ---- | 用于用低位字的符号位填充双字的高位字。 |