Assembly Program's File
Assembly Program's File
INDEX
1st Program:
.model small
.stack 100h
.data
msg1 db 13,10, “Enter character $”
msg2 db 13,10, “Entered character is $”
.code
mov ax, @data
mov ds, ax
lea dx, msg1
mov ah, 09h
int 21h
mov ah, 01h
int 21h
mov bl, al
lea dx, msg2
mov ah, 09h
int 21h
mov dl, bl
mov ah, 02h
int 21h
mov ah, 4ch
int 21h
end
Enter character G
Entered character is G
2nd Program:
.model small
.stack 100h
.data
msg1 db 13,10, “No time for $”
msg2 db 13,10, “Study $”
.code
mov ax, @data
mov ds, ax
lea dx, msg1
mov ah, 09h
int 21h
lea dx, msg2
mov ah, 09h
int 21h
mov ah, 4ch
int 21h
end
No time for
Study
3rd Program:
.model small
.stack 100h
.data
s1 db 13,10, “Enter the 1 st value $”
s2 db 13,10, “Enter the 2 nd value $”
s3 db 13,10, “Sum is $”
.code
mov ax, @data
mov ds, ax
lea dx, s1
mov ah, 09h
int 21h
mov ah, 01h
int 21h
sub al,30h
mov bl, al
lea dx, s2
mov ah, 09h
int 21h
mov db, 0lh
int 21h
mov ah, 01h
int 21h
sub al, 30h
add bl, al
lea dx, s3
mov ah, 09h
int 21h
add bl, 30h
mov dl, bl
mov dh, 02h
int 21h
mov ah, 4ch
int 21h
end
4th Program:
.model small
.stack 100h
.data
msg1 db 13,10, “Enter Number $”
msg2 db 13,10, “Factorial value is $”
.code
mov ax, @data
mov ds, ax
lea dx, msg1
mov ah, 09h
int 21h
mov bx, 0
start:
mov ah, 01
int 21h
cmp al, 0dh
je next
mov ah, 0
sub al, 30h
push ax
mov ax, 10d
mul bx
pop bx
add bx, ax
jmp start
next:
mov cx, bx
mov ax, 1
top:
mul cx
loop top
mov bx,10d
mov dx, 0
break:
div bx
push dx
inc cx
mov dx, 0
or ax, ax
jnz break
mov ah, 09
lea dx, msg2
int 21h
mov dx, 0
print:
pop dx
mov ah, 02
add dl, 03h
int 21h
loop print
mov ah, 4ch
int 21h
end
Enter Number 5
Factorial value is 120
5th Program:
.model small
.stack 100h
.data
m1 db 13,10, “Enter Number $”
m2 db 13,10, “Entered Number is $”
.code
mov ax, @data
mov ds, ax
lea dx, m1
mov ah, 09h
int 21h
mov bx, 0
start:
mov ah, 01
int 21h
cmp al, 0dh
je next
mov ah, 0
sub al, 30h
push ax
mov ax, 10d
mul bx
pop bx
add bx, ax
jmp start1
next:
push bx
mov ah,09h
lea dx, m2
int 21h
pop ax
mov dx,0
mov bx,10d
break:
div bx
push dx
mov dx,0
or ax, ax
jnz break
print:
pop dx
add dl, 30h
mov ah, 02
int 21h
loop print
mov ah, 4ch
int 21h
end
6th Program:
Write an assembly program to read a character from keyboard then display within
parenthesis.
.model small
.stack 100h
.data
m1 db 13,10, “Enter Character : $”
m2 db 13,10, “Entered Character is : $”
.code
mov ax, @data
mov ds, ax
lea dx, m1
mov ah, 09h
int 21h
mov ah,01h
int 21h
mov bl,al
lea dx,m2
mov ah,09h
int 21h
mov dl,”(”
mov ah,02h
int 21h
mov dl,bl
mov ah,02h
int 21h
mov dl,”)
mov ah,02h
int 21h
mov ah,4ch
int 21h
end
7th Program:
Write an assembly program to read a string & then display in reverse string.
.model small
.stack 100h
.data
m1 db 13,10, “Enter String : $”
m2 db 13,10, “Reverse String is : $”
.code
mov ax, @data
mov ds, ax
lea dx, m1
mov ah, 09h
int 21h
mov cx, 0
read:
mov ah, 01
int 21h
cmp al, 0dh
je ahead
push ax
inc cx
jmp read
ahead:
lea dx, m2
mov ah,09h
int 21h
display:
mov ah,02h
pop dx
int 21h
loop display
mov ah,4ch
int 21h
end
8th Program:
.model small
.stack 100h
.data
a dw ?
s1 db 13,10, “Enter Number : $”
s2 db 13,10, “Square is : $”
.code
mov ax, @data
mov ds,ax
mov ah,09h
lea dx,s1
int 21h
mov bx,0
read:
mov ah,01h
int 21h
cmp al,0dh
je next
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp read
next:
mov ax,bx
mov a,ax
mul a
push ax
mov cx,0
mov ah,09h
lea dx,s2
int 21h
mov dx,0
mov bx,10d
pop ax
display:
mov dx,0
div bx
push dx
inc cx
or ax,ax
jnz display
print:
mov dx,0
mov ah,02h
pop dx
add dl,30h
int 21h
loop print
mov ah,4ch
int 21h
end
Enter Number : 2
Square is : 4
9th Program:
Write an assembly program to find out the multiplication of two single digit numbers.
.model small
.stack 100h
.data
s1 db 13,10, “Enter 1st Number : $”
s2 db 13,10, “Enter 2nd Number : $”
s3 db 13,10, ”Multiplication is : $”
.code
mov ax, @data
mov ds, ax
lea dx, s1
mov ah, 09h
int 21h
lea dx, s2
mov ah, 09h
int 21h
lea dx, s3
mov ah, 09h
int 21h
10th Program:
Write an assembly program to find out the subtraction of two single digit numbers.
.model small
.stack 100h
.data
s1 db 13,10, “Enter 1st Number : $”
s2 db 13,10, “Enter 2nd Number : $”
s3 db 13,10, ”Subtraction is : $”
.code
mov ax, @data
mov ds, ax
lea dx, s1
mov ah, 09h
int 21h
lea dx, s2
mov ah, 09h
int 21h
lea dx, s3
mov ah, 09h
int 21h
int 21h
end
11th Program:
Write an assembly program to find out the addition of two multiple digits numbers.
.model small
.stack 100h
.data
s1 db 13,10, “Enter 1st Number : $”
s2 db 13,10, “Enter 2nd Number : $”
s3 db 13,10, ”Addition is : $”
.code
mov ax, @data
mov ds, ax
lea dx, s1
mov ah, 09h
int 21h
mov bx, 0
start1:
mov ah, 01h
int 21h
cmp al,0dh
jz next1
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start1
next1:
push bx
lea dx,s2
mov ah,09h
int 21h
mov bx,0
start2:
mov ah,01h
int 21h
cmp al,0dh
jz next2
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start2
next2:
pop ax
add ax,bx
push ax
lea dx,s3
mov ah,09h
int 21h
pop ax
mov cx,0
mov dx,0
mov bx,10d
break:
div bx
push dx
mov dx,0
inc cx
or ax,ax
jnz break
push:
pop dx
add dl,30h
mov ah,02h
int 21h
loop print
mov ah,4ch
int 21h
end
12th Program:
Write an assembly program to find out the subtraction of two multiple digits numbers.
.model small
.stack 100h
.data
s1 db 13,10, “Enter 1st Number : $”
s2 db 13,10, “Enter 2nd Number : $”
s3 db 13,10, ” Subtraction is : $”
.code
mov ax, @data
mov ds, ax
lea dx, s1
mov ah, 09h
int 21h
mov bx, 0
start1:
mov ah, 01h
int 21h
cmp al,0dh
jz next1
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start1
next1:
push bx
lea dx,s2
mov ah,09h
int 21h
mov bx,0
start2:
mov ah,01h
int 21h
cmp al,0dh
jz next2
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start2
next2:
pop ax
sub ax,bx
push ax
lea dx,s3
mov ah,09h
int 21h
pop ax
mov cx,0
mov dx,0
mov bx,10d
break:
div bx
push dx
mov dx,0
inc cx
or ax,ax
jnz break
push:
pop dx
add dl,30h
mov ah,02h
int 21h
loop print
mov ah,4ch
int 21h
end
13th Program:
Write an assembly program to find out the multiplication of two multiple digits numbers.
.model small
.stack 100h
.data
s1 db 13,10, “Enter 1st Number : $”
s2 db 13,10, “Enter 2nd Number : $”
s3 db 13,10, ”Multiplication is : $”
.code
mov ax, @data
mov ds, ax
lea dx, s1
mov ah, 09h
int 21h
mov bx, 0
start1:
mov ah, 01h
int 21h
cmp al,0dh
jz next1
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start1
next1:
push bx
lea dx,s2
mov ah,09h
int 21h
mov bx,0
start2:
mov ah,01h
int 21h
cmp al,0dh
jz next2
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start2
next2:
pop ax
mul bx
push ax
lea dx,s3
mov ah,09h
int 21h
pop ax
mov cx,0
mov dx,0
mov bx,10d
break:
div bx
push dx
mov dx,0
inc cx
or ax,ax
jnz break
push:
pop dx
add dl,30h
mov ah,02h
int 21h
loop print
mov ah,4ch
int 21h
end
14th Program:
Write an assembly program to find out the division of two multiple digits numbers.
.model small
.stack 100h
.data
s1 db 13,10, “Enter 1st Number : $”
s2 db 13,10, “Enter 2nd Number : $”
s3 db 13,10, ”Addition is : $”
.code
mov ax, @data
mov ds, ax
lea dx, s1
mov ah, 09h
int 21h
mov bx, 0
start1:
mov ah, 01h
int 21h
cmp al,0dh
jz next1
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start1
next1:
push bx
lea dx,s2
mov ah,09h
int 21h
mov bx,0
start2:
mov ah,01h
int 21h
cmp al,0dh
jz next2
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp start2
next2:
pop ax
div bx
push ax
lea dx,s3
mov ah,09h
int 21h
pop ax
mov cx,0
mov dx,0
mov bx,10d
break:
div bx
push dx
mov dx,0
inc cx
or ax,ax
jnz break
push:
pop dx
add dl,30h
mov ah,02h
int 21h
loop print
mov ah,4ch
int 21h
end
15th Program:
.model small
.stack 100h
.data
.code
mov ax, @data
mov ds, ax
mov dl,”A”
mov cx,26
again:
mov ah,02h
int 21h
inc dl
mov bx,0
mov bl,dl
mov dl,” ”
mov ah,02h
int 21h
mov dl,bl
loop again
mov ah,4ch
int 21h
end
ABCDEFGHIJKLMNOPQRSTUVWXYZ
16th Program:
.model small
.stack 100h
.data
s1 db 13,10, “Input limit : $”
s2 db 13,10, “Sum of series is : $”
.code
mov ax, @data
mov ds,ax
mov ah,09h
lea dx,s1
int 21h
mov bx,0
read:
mov ah,01h
int 21h
cmp al,0dh
je next
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp read
next:
mov ax,bx
mov cx,ax
mov ax,0
again:
add ax,cx
loop again
push ax
mov cx,0
mov ah,09h
lea dx,s2
int 21h
mov dx,0
mov bx,10d
pop ax
display:
mov dx,b
div bx
push dx
inc cx
or ax,ax
jnz display
print:
mov dx,0
mov ah,02h
int 21h
pop dx
add dl,30h
int 21h
loop print
mov ah,4ch
int 21h
end
Input limit : 5
Sum of series is : 15
17th Program:
.model small
.stack 100h
.data
a dw ?
b dw ?
c dw ?
l dw ?
s1 db 13,10, “Enter 1st no. : $”
s2 db 13,10, “Enter 2nd no. : $”
s3 db 13,10, “Enter 3rd no. : $”
s4 db 13,10, “Largest no. is : $”
.code
mov ax, @data
mov ds,ax
mov ah,09h
lea dx,s1
int 21h
call getint
mov a,bx
mov ax,0
mov bx,0
mov ah,09h
lea dx,s2
int 21h
call getint
mov b,dx
mov bx,0
mov ax,0
mov ah,09h
lea dx,s3
int 21h
call getint
mov c,bx
mov bx,0
mov ax,0
mov ax,a
cmp ax,b
jl check_bc
cmp ax,c
jl mov_c
mov l,ax
jmp exit1
check_bc:
mov ax,b
cmp ax,c
jl mov_c
mov l,ax
jmp exit1
mov_c:
mov ax,c
mov l,ax
mov ax,0
mov bx,0
mov dx,0
exit1:
mov ah,09h
lea dx,s4
int 21h
call disprint
mov ax,0
mov ah,4ch
int 21h
getint proc
mov bx,0
read:
mov ah,01h
int 21h
cmp al,0dh
je next
mov ah,0
sub al,30h
push ax
mov ax,10d
mul bx
pop bx
add bx,ax
jmp read
next:
ret
getint endp
disprint proc
mov ax,l
push ax
mov dx,0
mov bx,10d
pop ax
mov cx,0
display:
mov dx,0
div bx
push dx
inc cx
or ax,ax
jnz display
print:
mov dx,0
mov ah,02h
pop dx
add dl,30h
int 21h
loop print
ret
disprint endp
end