Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- mov r1, #FFh ;;;;n
- repeat:
- clr p5.1;;; SWAPPED
- mov r5, #00h ;;; i
- for: mov r2, r1 ;;; r2 = loop control
- mov a, r5 ;;; i - 1
- movc a, @a+DPTR ;;; A[i-1]
- mov r6, a ;;; A[i-1]
- inc r5 ;;;
- mov a, r5 ;;; i
- movc a, @a+DPTR;;;A[i]
- mov r7, a ;;;A[i] for swap
- subb a, r6 ;;; C if A[i] < A[i-1]
- jnc else ;;;jesli nie trzeba swapowac
- dec r5 ;;;i-1
- mov a, r5
- movc @a+DPTR, r7
- inc r5 ;;;i
- mov a, r5
- movc @a+DPTR, r6
- setb p5.1 ;;;swapped=true
- else:djnz r2, for
- dec r1 ;;; n = n-1
- jb p5.1 repeat ;;until now swapped
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement