Arithmetic instructions in 8086 microprocessor
Arithmetic Instructions are the instructions which perform basic arithmetic operations such as addition, subtraction and a few more. Unlike in 8085 microprocessor, in 8086 microprocessor the destination operand need not be the accumulator.
Following is the table showing the list of arithmetic instructions:
| OPCODE | OPERAND | EXPLANATION | EXAMPLE |
|---|---|---|---|
| ADD | D, S | D = D + S | ADD AX, [2050] |
| ADC | D, S | D = D + S + prev. carry | ADC AX, BX |
| SUB | D, S | D = D – S | SUB AX, [SI] |
| SBB | D, S | D = D – S – prev. carry | SBB [2050], 0050 |
| MUL | 8-bit register | AX = AL * 8-bit reg. | MUL BH |
| MUL | 16-bit register | DX AX = AX * 16-bit reg. | MUL CX |
| IMUL | 8 or 16 bit register | performs signed multiplication | IMUL CX |
| DIV | 8-bit register | AX = AX / 8-bit reg. ; AL = quotient ; AH = remainder | DIV BL |
| DIV | 16-bit register | DX AX / 16-bit reg. ; AX = quotient ; DX = remainder | DIV CX |
| IDIV | 8 or 16 bit register | performs signed division | IDIV BL |
| INC | D | D = D + 1 | INC AX |
| DEC | D | D = D – 1 | DEC [2050] |
| CBW | none | converts signed byte to word | CBW |
| CWD | none | converts signed byte to double word | CWD |
| NEG | D | D = 2’s compliment of D | NEG AL |
| DAA | none | decimal adjust accumulator | DAA |
| DAS | none | decimal adjust accumulator after subtraction | DAS |
| AAA | none | ASCII adjust accumulator after addition | AAA |
| AAS | none | ASCII adjust accumulator after subtraction | AAS |
| AAM | none | ASCII adjust accumulator after multiplication | AAM |
| AAD | none | ASCII adjust accumulator after division | AAD |
Here D stands for destination and S stands for source.
D and S can either be register, data or memory address.
Recommended Posts:
- Logical instructions in 8086 microprocessor
- Data transfer instructions in 8086 microprocessor
- Process control instructions in 8086 microprocessor
- String manipulation instructions in 8086 microprocessor
- Program execution transfer instructions in 8086 microprocessor
- Arithmetic instructions in 8085 microprocessor
- Branching instructions in 8085 microprocessor
- Logical instructions in 8085 microprocessor
- Data transfer instructions in 8085 microprocessor
- 8086 program to transfer a block of 4 bytes by using string instructions
- Pin diagram of 8086 microprocessor
- Interrupts in 8086 microprocessor
- Addressing modes in 8086 microprocessor
- Differences between 8085 and 8086 microprocessor
- Memory Segmentation in 8086 Microprocessor
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



