merging of arrays in assembly language programming

[org 0x0100]

mov ax, 0
mov bx, 0
mov cx, 0
mov dx, 0

mov al, [size1]

mov dl, [size2]

mov si, 0
mov di, 0
mov bx, result

loop1:
mov cl, [array1+si]
loop2:
cmp cl, [array2+di]
je write

add di, 1
cmp di, dx
jne loop2

jmp write
wb:
mov di, 0

add si, 1
cmp si, ax
jne loop1
jmp exit

write:
mov byte[bx], cl
add bx, 1
jmp wb

exit:
mov ax, 0x4c00
int 21h

array1  db  1,3,5,9,10,11
size1 db 6 ; 6 elements in array

array2  db  3,9,15,20,50
size2 db 5 ; 5 elements in array

result  db  1,3,5,9,10,11,15,20,50
size3 db 11 ; 11 elements in array

Comments

Popular Posts