8085 Arithmetic Instructions

Following is the table showing the list of Arithmetic instructions with their meanings.

Opcode Operand Meaning Explanation

R

M

Add register or memory, to the accumulator

The contents of the register or memory are added to the contents of the accumulator and the result is stored in the accumulator.

Example − ADD K.

R

M

Add register to the accumulator with carry

The contents of the register or memory & M the Carry flag are added to the contents of the accumulator and the result is stored in the accumulator.

Example − ADC K

8-bit data

Add the immediate to the accumulator

The 8-bit data is added to the contents of the accumulator and the result is stored in the accumulator.

Example − ADI 55K

ACI

8-bit data

Add the immediate to the accumulator with carry

The 8-bit data and the Carry flag are added to the contents of the accumulator and the result is stored in the accumulator.

Example − ACI 55K

LXI

Reg. pair, 16bit data

Load the register pair immediate

The instruction stores 16-bit data into the register pair designated in the operand.

Example − LXI K, 3025M

Reg. pair

Add the register pair to H and L registers

The 16-bit data of the specified register pair are added to the contents of the HL register.

Example − DAD K

SUB

R

M

Subtract the register or the memory from the accumulator

The contents of the register or the memory are subtracted from the contents of the accumulator, and the result is stored in the accumulator.

Example − SUB K

SBB

R

M

Subtract the source and borrow from the accumulator

The contents of the register or the memory & M the Borrow flag are subtracted from the contents of the accumulator and the result is placed in the accumulator.

Example − SBB K

SUI

8-bit data

Subtract the immediate from the accumulator

The 8-bit data is subtracted from the contents of the accumulator & the result is stored in the accumulator.

Example − SUI 55K

XCHG

None

Exchange H and L with D and E

The contents of register H are exchanged with the contents of register D, and the contents of register L are exchanged with the contents of register E.

Example − XCHG

INR

R

M

Increment the register or the memory by 1

The contents of the designated register or the memory are incremented by 1 and their result is stored at the same place.

Example − INR K

INX

R

Increment register pair by 1

The contents of the designated register pair are incremented by 1 and their result is stored at the same place.

Example − INX K

DCR

R

M

Decrement the register or the memory by 1

The contents of the designated register or memory are decremented by 1 and their result is stored at the same place.

Example − DCR K

DCX

R

Decrement the register pair by 1

The contents of the designated register pair are decremented by 1 and their result is stored at the same place.

Example − DCX K

DAA

None

The contents of the accumulator are changed from a binary value to two 4-bit BCD digits.

If the value of the low-order 4-bits in the accumulator is greater than 9 or if AC flag is set, the instruction adds 6 to the low-order four bits.

If the value of the high-order 4-bits in the accumulator is greater than 9 or if the Carry flag is set, the instruction adds 6 to the high-order four bits.

Example − DAA

microprocessor_8085_instruction_sets.htm