High School Physics

Arrange an array of data in descending order in 8085 – PhysicsTeacher.in

Last updated on March 10th, 2022 at 03:40 pm

In this post, we will see how to write a program to arrange an array of data in descending order in an 8085 microprocessor.

Algorithm to Arrange an Array of data in descending order (in 8085)

1. Initialize HL pair as memory pointer
2. Get the count at 4200 into C register
3. Copy it in D register (for bubble sort (N-1) times required)
4. Get the first value in A register
5. Compare it with the value at next location.
6. If they are out of order, exchange the contents of A register and Memory
7. Decrement D register content by 1
8. Repeat steps 5 and 7 till the value in D register become zero
9. Decrement C register content by 1
10. Repeat steps 3 to 9 till the value in C register becomes zero

LXI H,4200
MOV C,M
DCR C
REPEAT: MOV D,C
LXI H,4201
LOOP: MOV A,M
INX H
CMP M
JNC SKIP
MOV B,M
MOV M,A
DCX H
MOV M,B
INX H
SKIP: DCR D
JNZ LOOP
DCR C
JNZ REPEAT
HLT

Observation

Input: 4200 05 (Array Size)
4201 01
4202 02
4203 03
4204 04
4205 05
Output: 4200 05(Array Size)
4201 05
4202 04
4203 03
4204 02
4205 01

Result

Thus the given array of data was arranged in descending order using the 8085 microprocessor program.