In this program we will see how to find 1's complement and 2's complement of an 8-bit number.
Write 8085 Assembly language program to find 1's complement and 2's complement of a number stored in 8000H.
8085 has an instruction CMA. This instruction complements the content of Accumulator. For 1's complement CMA instruction is sufficient, and for 2's complement we have to increase the number by 1 after complementing.
We are taking the number from 8000H and storing the 1's complement at location 8050H, and 2's complement to 8051H.
Address | Data |
---|---|
. . . | . . . |
8000 | AB |
. . . | . . . |
Address | HEX Codes | Mnemonics | Comments |
---|---|---|---|
F000 | 3A, 00, 80 | LDA 8000H | Load the number from memory |
F003 | 2F | CMA | Complement the accumulator |
F004 | 32, 50, 80 | STA 8050H | Store the 1's complemented result |
F007 | 3C | INR A | Increase A by 1 |
F008 | 32, 51, 80 | STA 8051H | Store the 2's complemented result |
F00B | 76 | HLT | Terminate the program |
Address | Data |
---|---|
. . . | . . . |
8050 | 54 |
8051 | 55 |
. . . | . . . |