IMUL − Used to multiply signed byte by byte/word by word.ĪAM − Used to adjust ASCII codes after multiplication.ĭIV − Used to divide the unsigned word by byte or unsigned double word by word. MUL − Used to multiply unsigned byte by byte/word by word. NPG − Used to negate each bit of the provided byte/word and add 1/2’s complement.ĬMP − Used to compare 2 provided byte/word.ĪAS − Used to adjust ASCII codes after subtraction.ĭAS − Used to adjust decimal after subtraction.
SBB − Used to perform subtraction with borrow.ĭEC − Used to decrement the provided byte/word by 1. SUB − Used to subtract the byte from byte/word from word. INC − Used to increment the provided byte/word by 1.ĪAA − Used to adjust ASCII after addition.ĭAA − Used to adjust the decimal after the addition/subtraction operation. These instructions are used to perform arithmetic operations like addition, subtraction, multiplication, division, etc.įollowing is the list of instructions under this group − Instructions to perform additionĪDD − Used to add the provided byte to byte/word to word. POPF − Used to copy a word at the top of the stack to the flag register. PUSHF − Used to copy the flag register at the top of the stack. SAHF − Used to store AH register to low byte of the flag register. LAHF − Used to load AH with the low byte of the flag register. LES − Used to load ES register and other provided register from the memory. LDS − Used to load DS register and other provided register from the memory LEA − Used to load the address of operand into the provided register. OUT − Used to send out a byte or word from the accumulator to the provided port. IN − Used to read a byte or word from the provided port to the accumulator. Instructions for input and output port transfer XLAT − Used to translate a byte in AL using a table in the memory.
XCHG − Used to exchange the data from two locations. POPA − Used to get words from the stack to all registers. PUSHA − Used to put all the registers into the stack. POP − Used to get a word from the top of the stack to the provided location. PPUSH − Used to put a word at the top of the stack. MOV − Used to copy the byte or word from the provided source to the provided destination. Following are the list of instructions under this group − Instruction to transfer a word These instructions are used to transfer the data from the source operand to the destination operand. Let us now discuss these instruction sets in detail. Program Execution Transfer Instructions (Branch & Loop Instructions).The 8086 microprocessor supports 8 types of instructions −