High School Physics

# Arrange an array of data in ascending order in 8085 – PhysicsTeacher.in

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

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

## Algorithm to Arrange an Array of data in ascending 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
JC 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 05
4202 04
4203 03
4204 02
4205 01

Output:

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

## Result

Thus the given array of data was arranged in ascending order.