You are on page 1of 5

Write 8086 assembly language programs to

sort the given 10 numbers in ascending order


and in descending order.

Solution:
Ascending Order:
Code:
.model small

.data

array db 7h, 4h, 6h, 5h ,3h, 2h, 8h ,9h ,4h, 6h,3h

arr_cnt equ 9

.code

mov ax, @data

mov ds, ax

mov ax, 0000h

mov BX, arr_cnt


CHECK:

mov cx, bx

mov si, 00h

PASS:

mov al, array[si]

inc si

cmp al, array[si]

jbe SKIP

xchg al, array[si]

mov array[si-1], al

SKIP:

loop PASS

dec bx

jnz CHECK

mov ah, 4ch

int 21h

end
Screenshot:

Descending Order:

.model small

.data

array db 7h, 4h, 6h, 5h ,3h, 2h, 8h ,9h ,4h, 6h, 3h


arr_cnt equ 9

.code

mov ax, @data

mov ds, ax

mov ax, 0000h

mov BX, arr_cnt

CHECK:

mov cx, bx

mov si, 00h

PASS:

mov al, array[si]

inc si

cmp al, array[si]

jge SKIP

xchg al, array[si]

mov array[si-1], al

SKIP:

loop PASS

dec bx

jnz CHECK
mov ah, 4ch

int 21h

end

Screenshot:

You might also like