Write a Program to Add Two 32 Bit Numbers in Assembly language . To add 32 bit numbers AX Register should load  LSB of the number . BX Register should load MSB of the number of the first Number .
We have two double word numbers i.e. 32 bit numbers.
Initially we will load the first 32 bit into the registers AX and BX. AX contains the LSB while BX contains the MSB, using MOV instruction.
Now we will load the second 32 bit number into the registers CX and DX with CX containing the LSB and DX containing the MSB.
First we will add the two LSBs i.e. contents of AX and CX registers, using ADD instruction. Now we will the contents of the two MSBs i.e. contents of BX and DX registers. For this addition we will use the ADC instruction (add with carry) so that if any carry is generated in the LSB addition it will be added.
The result is stored in AX and BX registers. AX contains the LSB and BX contains the MSB after addition.
·           Display the result using display routine.
For example :
BX : AX = 12345678 H
12345678 H
DX : CX = 11111111 H
+
11111111 H
23456789 H
Algorithm to Add Two 32 Bit Numbers : 
Step I        :    Initialize the data segment.
Step II       :    Load the LSB of first number into AX register.
Step III     :    Load the MSB of first number into BX register.
Step IV     :    Load the LSB of the second number into CX register.
Step V       :    Load the MSB of the second number into DX register.
Step VI     :    Add the LSBs of two number.
Step VII    :    Add the MSBs of two numbers along with carry.
Step VIII  :    Display the result.
Step IX     :    Stop.
Program to Add Two 32 Bit Numbers :

 

 

How to Run this Program : 

For Running this program you should have installed Tasm on you computer . If you have not installed Tasm  yet please install from Here .

C:\programs>tasm 32add.asm
Turbo Assembler  Version 3.0  Copyright (c) 1988, 1991 Borland International
Assembling file:   32add.asm
Error messages:    None
Warning messages:  None
Passes:            1
Remaining memory:  437k
C:\programs>tlink 32add.obj
Turbo Link  Version 3.0 Copyright (c) 1987, 1990 Borland International
Warning: No stack
C:\programs>32add
23456789