You are on page 1of 4

Assignment no : 1

Q . Write an assembly program for Addition and subtraction of two 16 bit


numbers.

(1) Program for Addition two 16 :

Algorithm:
1.Load the first data in the AX register .
2.Load the second data BX register.
3.Clear CL register.
4.Add the two data and get the sum in the AX register.
5.Store the sum in memory.
6.Check for Carry . If the Carry flag is set then go to the next step,otherwise go to
step 8.
7.Increment CL register.
8.Store the carry in memory.
9.Stop.

Flowchart:

Program :
MOV AX,[1000H]
MOV BX,[1002H]
MOV CL,00H
ADD AX,BX
MOV [1004H],AX
JNC JUMP
INC CL
JUMP:
MOV [1006H],CL
HLT
OUTPUT:

Memory access:

Emulator :

(2) Subtraction of two 16 bit number

Algorithm :
1.Load the first data in the AX register .
2.Load the second data BX register.
3.Clear CL register.
4.Subtract the two data and get the difference in the AX register.
5..Check for Carry . If the Carry flag is set then go to the next step,otherwise go to
step 8.
6. Increment CL register by one.
7.Take 2’s Complement of the difference in AX register(Complement +1)
8.Store the Magnitude of difference in memory .
9.Store the sign bit in Memory.
10.STOP.
Flowchart:

Program :
MOV AX,[1000H]
MOV BX,[1002H]
MOV CL,00H
SUB AX,BX
JNC jump
INC CL
NOT AX
ADD AX,0001H
jump:
MOV [1004H],AX
MOV [1006H],CL
HLT

Memory access :

Emulator :

You might also like