Open In App

8085 program to show masking of lower and higher nibbles of 8 bit number

Last Updated : 20 Apr, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Problem – Write an assembly language program in 8085 microprocessor to show masking of lower and higher nibble of 8 bit number. Example – Assumption – 8 bit number is stored at memory location 2050. After masking of nibbles, lower order nibble is stored at memory location 3050 and higher order nibble is stored at memory location 3051. Algorithm –

  1. Load the content of memory location 2050 in accumulator A.
  2. Move the content of A in register B.
  3. Perform AND operation of A with 0F and store the result in memory location 3050.
  4. Move the content of B in A.
  5. Perform AND operation of A with F0 and reverse the result by using RLC instruction 4 times.
  6. Store the result in memory location 3051.

Program –

MEMORY ADDRESS MNEMONICS COMMENT
2000 LDA 2050 A <- M[2050]
2003 MOV B, A B <- A
2004 ANI 0F A <- A (AND) 0F
2006 STA 3050 M[3050] <- A
2009 MOV A, B A <- B
200A ANI F0 A <- A (AND) F0
200C RLC rotate content of A left by 1 bit without carry
200D RLC rotate content of A left by 1 bit without carry
200E RLC rotate content of A left by 1 bit without carry
200F RLC rotate content of A left by 1 bit without carry
2010 STA 3051 M[3051] <- A
2013 HLT END

Explanation – Registers A, B are used:

  1. LDA 2050: load the content of memory location 2050 in accumulator A.
  2. MOV B, A: moves the content of A to B.
  3. ANI 0F: perform AND operation of A with 0F and store the result back to A.
  4. STA 3050: store content of A in memory location 3050.
  5. MOV A, B: moves the content of B in A.
  6. ANI F0: perform AND operation of A with F0 and store the result back to A.
  7. RLC: rotate content of A left by 1 bit without carry. Use this instruction 4 times to reverse the content of A.
  8. STA 3051: store the content of A in memory location 3051.
  9. HLT: stops executing the program and halts any further execution.

Advantages:

  • The program is simple and easy to understand, consisting of only a few instructions.
     
  • The program uses the AND instruction to perform the masking operation, which is an efficient method.
     
  • The program stores the masked nibbles in separate memory locations, making it easy to access and use the results in other programs.
     

Disadvantages:

  • The program assumes that the number is stored in register A, and does not provide error checking for invalid input.
     
  • The program stores the masked nibbles in fixed memory locations, which may cause conflicts with other programs or data.
     
  • The program does not provide any feedback to the user or the system to indicate that the masking has been completed successfully.
     
  • The program does not provide any error checking or recovery mechanisms in case of hardware or software failures.

Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads