Arrange in Descending order

Statement: Arrange an array of 8 bit unsigned no in descending order

  • START:MVI B, 00 ; Flag = 0
  • LXI H, 4150 ; Count = length of array
  • MOV C, M
  • DCR C ; No. of pair = count -1
  • INX H ; Point to start of array
  • LOOP:MOV A, M ; Get kth element
  • INX H
  • CMP M ; Compare to (K+1) th element
  • JNC LOOP 1 ; No interchange if kth >= (k+1) th
  • MOV D, M ; Interchange if out of order
  • MOV M, A ;
  • DCR H
  • MOV M, D
  • INX H
  • MVI B, 01H ; Flag=1
  • LOOP 1:DCR C ; count down
  • JNZ LOOP ;
  • DCR B ; is flag = 1?
  • JZ START ; do another sort, if yes
  • HLT ; If flag = 0, step execution

Post a Comment

0 Comments

Close Menu