Microprocessor Tutorial

8085 Microprocessor

8086 Microprocessor

Difference between

8085 Instruction set

Instruction set of 8085

The instruction set can be divided into following groups:

  1. Data Transfer instructions
  2. Arithmetic instructions
  3. Logical instructions
  4. Branch instructions

Data transfer instructions

  1. MOV r1, r2 : Move data from resource(r2) to destination(r1) register.

  2. MOV r, m : Move data from resource(r2) to destination(r1) register.

  3. MVI r,d : Move 8-bit data(d) to 8-bit register(r).

  4. MVI M,d : Move immediate data(d) to memory (M).

  5. OUT port-address : Send data from accumulator to output port.

  6. IN port-address : Take in data from input port to accumulstor.

  7. LXI rp,data16 : Load 16-bit data to register pair(rp)

  8. LDA address : Load data to accumulator from given address.

  9. STA address : Store data from accumulator to given address.

  10. LDAX rp: Load 16-bit data to register pair(rp)

  11. STAX rp: Load 16-bit data to register pair(rp)

  12. XCHG : Exchange the contents of HL with DE pair

Arithmetic instructions

  1. ADD r: Add the content of register(r) to accumulator and stores result in Accumulator.

  2. ADD M: Add content of indirectly specified memory(M) to accumulator.

  3. ADC M: Add memory(M) to accumulator.

  4. ADC r: Add the content of register(r), accumulator and carry bit

  5. SUB r: Subtract from A the data in R, store result in A

  6. SUB r: Subtract from A the data in R, store result in A

  7. SBB r: Subtract from A the data in R and carry store result in A

  8. DCR r: Decrement the content of 8-bit register(r) by 1

  9. INR M: Increment the content of indirectly specified memory by 1

  10. DCR M: Decrement the content of indirectly specified memory by 1

  11. INX rp: Increment the content of register pair(rp) by 1

  12. DCX rp: Decrement the content of register pair(rp) by 1

Branch instructions

  1. JMP adr16: Jump unconditionally to the given address.

  2. JNZ adr16: Jump on given address(adr16) when Z=0

  3. JZ adr16: Jump on given address(adr16) when Z=1

  4. JNC adr16: Jump on given address(adr16) when C=0

  5. JN adr16: Jump on given address(adr16) when C=1

  6. CALL adr16: Call a subprogram written in the address(adr16) given

Logical instructions

  1. ANA r: Logically AND the content of A and register r, and store result in A

  2. ANA M: Logically AND the content of A and memory M, and store result in A

  3. ORA r: Logically OR the content of A and register r, and store result in A

  4. ORA M: Logically OR the content of A and memory M, and store result in A

  5. XRA r: Logically XOR the content of A and register r, and store result in A

  6. XRA M: Logically XOR the content of A and memory M, and store result in A

  7. CMP r: Comapare the contents of A and r, only flags are affected

  8. CMP M: Comapare the contents of A and memory M, only flags are affected

  9. RLC : Rotate the bits in A once, to the left

  10. RAL : Rotate the bits in A and the carry bit, to the left, once

  11. RRC : Rotate the bits in A once, to the right

  12. RAR : Rotate the bits in A and the carry bit, to the right, once

Advertisment

Share


Advertisement