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:
|ADD||D, S||D = D + S||ADD AX, |
|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 , 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 |
|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.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Logical instructions in 8086 microprocessor
- String manipulation instructions in 8086 microprocessor
- Process control instructions in 8086 microprocessor
- Data transfer instructions in 8086 microprocessor
- Program execution transfer instructions in 8086 microprocessor
- Arithmetic instructions in 8085 microprocessor
- Difference between SIM and RIM instructions in 8085 microprocessor
- Machine Control Instructions in Microprocessor
- Logical instructions in 8085 microprocessor
- Branching instructions in 8085 microprocessor
- Data transfer instructions in 8085 microprocessor
- 8086 program to transfer a block of 4 bytes by using string instructions
- Bus Cycles of 8086 Microprocessor
- Pin diagram of 8086 microprocessor
- Interrupts in 8086 microprocessor
- Differences between 8085 and 8086 microprocessor
- Memory Segmentation in 8086 Microprocessor
- Addressing modes in 8086 microprocessor
- Flag register of 8086 microprocessor
- General purpose registers 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 firstname.lastname@example.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.