;Program for Example 20-5 to load 3 numbers and compute their sum .8087 PAGE 60,132 .MODEL SMALL .STACK 32 ;---------------------------- .DATA ORG 00H X DD 9.75 ORG 10H Y DD 13.09375 ORG 20H Z DD 29.0390625 ORG 30H SUM DD ? ;---------------------------- .CODE START PROC FAR MOV AX,@DATA MOV DS,AX CALL CSUM MOV AH,4CH INT 21H START ENDP ;----------------------------- CSUM PROC NEAR FINIT ;initialize 8087 stack FLD X ;load X into ST(0) FLD Y ;load Y into ST(0) FLD Z ;load Z into ST(0) FADD ST(0),ST(1) ;ST(0) = Y + Z FADD ST(0),ST(2) ;ST(0) = X + (Y + Z) FST SUM ;store ST(0) in sum RET CSUM ENDP END START