Tuesday, June 21, 2011

WRITE A PROGRAM IN 8086 that accepts two floating point number form the correctly the format.

WRITE A PROGRAM IN 8086 that accepts two floating point number form the correctly the format.

Print macro msg
Mov ah, 09h
Mov dx , offset msg
Int 21h
End

DATA SEGEMENT
NUM1 DB 100 DUP(0)
NUM2 DB 100 DUP(0)
MSG1 DB “ ENTER THE FIRST NUMBER”
MSG2 DB “ENTER THE SECOND NUMBER”
MSG3 DB “ SUM OF TWO NUMBER”
MSG4 DB “ EXPONENT IS NOT EQUAL”
RES DB 100 DUP (0)

DATA ENDS

CODE SEGMENT
ASSUME CS:CODE, DS : DATA
START
MOV AX,DATA
MOV DS,AX
PRINT MSG2
MOV SI, OFFSET NUM1

X: MOV AH,02H
INT 21H
MOV [SI],AL
INC SI
CMP AL,0DH
JNE X

PRINT MSG2
MOV SI, OFFSET NUM2

Y:
MOV AH, 01H
INT 21H
MOV [SI],AL
INC SI
CMP AL, 0DH
JNE Y

W: MOV CL,03H
MOV SI,OFFSET NUM1
MOV DI,OFFSET NUM2
ADD SI, 07H
ADD DI,07H
MOV AL, [SI]
MOV BL,[DI]
COM AL, BL
INC SI
INC DI
JNE
LOOP W

MOV CL,04H

XY: MOV BX,OFFSET RES
MOV SI, OFFSET NUM1
MOV DI, OFFSET NUM2
MOV AL,[SI]
ADD AL,[DI]
MOV [BX],AL
INC SI
INC DI
INC BX

LOOP XY

RCL AL,01H
AND AL,01H
MOV [BX], AL

PRINT MSG3
PRINT RES
MOV AH,09CH
INT 21H
CODE ENDS
END START

PRINT MSG 4
MOV AH, 4CH
INT 21H





ALGORITHM

Step 1: start
Step 2: input number 1 and number2
Step3: n1=last character of number 1
N2=last character of number2
Step4: take a counter c and I=0
Step compare n1 and n2 of both are same go to step 6
Else
Go to step 11
Steps 6: n1= n1-1 and n2= n2-1
C=c+1
C=3 then go to step 7
Step 7
Take n1= 4th character of numebr1
And 4th character of number 2
C= 1

Step 8:
Add n1 and n2 , sum stored in variable s and carry stand in CA.

Step 9:
C=n+1
N1=n1-1 and n2=n2-1
Step 10
If c=5 the n go to step 12
Else
Go to step 8
Step 11: print “ exponent not match”
Step 12: print “ sum of two number”
Step 13: end

No comments:

Post a Comment