Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

Assembly Code:

[org 0x0100]

jmp start

id: db 2,2,0,4,0,5,6,8,0
less: db 0

sumResult: db 0,0,0,0,0,0,0,0,0

sortResult: db 0,0,0,0,0,0,0,0,0

swap: db 0

start:

mov cx, 8

mov bl, 9

mov si, id

low:

mov al, [si]

cmp al, bl

jge next

cmp al, 0

jz next

mov bl, al

next:
inc si

dec cx

jnz low

mov [less], bl

mov si, id

mov cx, 9

mov bl, 0

addroutine:

mov al, [si]

mov bl, [less]

add bl, al

mov [sumResult + di], bl

mov [sortResult + di], bl

inc si

inc di

dec cx

jnz addroutine

mov bx, sortResult

mov cx, 8
main:

mov si, 0

mov byte [swap], 0

inner:

mov al, [bx + si]

cmp al, [bx + si + 1]

jae noswap

mov dl, [bx + si + 1]

mov [bx + si], dl

mov [bx + si + 1], al

mov byte [swap], 1

noswap:

add si, 1

cmp si, cx

jne inner

cmp byte [swap], 1

je main

mov ax, 0x4c00

int 0x21

You might also like