ASM program to subtract two 8 bit numbers using 8085

AIM: To perform the subtraction of two 8 bit numbers using 8085.


  1. Start the program by loading the first data into Accumulator.
  2. Move the data to a register (B register).
  3. Get the second data and load into Accumulator.
  4. Subtract the two register contents.
  5. Check for carry.
  6. If carry is present take 2’s complement of Accumulator.
  7. Store the value of borrow in memory location.
  8. Store the difference value (present in Accumulator) to a memory
  9. location and terminate the program.


      MVI C, 00 ;Initialize C to 00
      LDA 4150  ;Load the value to Acc.
      MOV B, A  ;Move the content of Acc to B register.
      LDA 4151  ;Load the value to Acc.
      SUB B
      JNC LOOP  ;Jump on no carry.
      CMA       ;Complement Accumulator contents.
      INR A     ;Increment value in Accumulator.
      INR C     ;Increment value in register C
LOOP: STA 4152  ;Store the value of A-reg to memory address.
      MOV A, C  ;Move contents of register C to Accumulator.
      STA 4153  ;Store the value of Accumulator memory address.
      HLT       ;Terminate the program.


Input:06 (4150)

02 (4251)
Output:04 (4152)

01 (4153)


Thus the program to subtract two 8-bit numbers was executed.

Editorial Team
Editorial Team

We are a group of young techies trying to provide the best study material for all Electronic and Computer science students. We are publishing Microcontroller projects, Basic Electronics, Digital Electronics, Computer projects and also c/c++, java programs.

Leave a Reply

Your email address will not be published. Required fields are marked *

Get the latest updates on your inbox

Be the first to receive the latest updates from Codesdoc by signing up to our email subscription.