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
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
Post a Comment