注册 登录
编程论坛 汇编论坛

99251与-15962的相加怎么显示不出结果啊

编程2011 发布于 2011-06-01 10:58, 354 次点击
题目:写一个完整的程序放在代码段C_SEG中,要求把数据段D_SEG中的AUGEND和附加段E_SEG中的ADDEND相加,并把结果存放在D_SEG中的SUM中。其中AUGEND、ADDEND和SUM均为双精度数,AUGEND赋值为99251,ADDEND赋值为-15962。
代码:
程序代码:
D_SEG SEGMENT
   AUGEND DD 99251
   SUM  DD  ? ;此处输入数据段代码
D_SEG  ENDS

E_SEG SEGMENT

 ADDEND DD -15962   ;此处输入堆栈段代码
E_SEG ENDS

C_SEG SEGMENT
    ASSUME CS:C_SEG,DS:D_SEG,ES:E_SEG
START:
    MOV AX,D_SEG
    MOV DS,AX
    MOV AX,WORD PTR AUGEND
    MOV  DX, WORD PTR [AUGEND+2]
    MOV  CX, WORD PTR ADDEND
    MOV  BX,WORD PTR [ADDEND+2]
    ADD  AX,CX
    ADC  DX,BX
    MOV  SI,OFFSET SUM
    MOV  SI,AX
    MOV  [SI+2],DX
    MOV  DX,SI
   
    MOV  AX,09H
     INT 21H
    MOV AH,4CH
    INT 21H
C_SEG ENDS
    END START
求大虾看看代码解释一下,谢谢
1 回复
#2
ansic2011-06-01 12:17
9号功能是打印以$为结尾的字符串。
1