主题:请帮我看看这个程序,为什么不能输出.不长
;*************************
DATA SEGMENT
NUMBER1 DW 1
NUMBER2 DW 1
NUMLEN DW 3
MESS DB 'the 25th number is:','$'
DATA ENDS
;***********************
;数据定义
PROGRAM SEGMENT
MAIN PROC FAR
ASSUME CS:PROGRAM,DS:DATA
START:
;set up stack for return
PUSH DS
SUB AX,AX
PUSH AX
;set ds register to current data segment
MOV AX,DATA
MOV DS,AX
CALL FBL
LEA DX,MESS
MOV AH,09H
INT 21H
MOV AX,4C00H
INT 21H
RET
MAIN ENDP
;**************************************
FBL PROC NEAR
;
MOV AX,NUMBER1
MOV BX,AX
MOV AX,NUMBER2
ADD AX,BX
MOV NUMBER2,BX
MOV NUMBER1,AX
INC NUMLEN
CMP NUMLEN,19H
JL SECEND
SECEND:
CALL FBL
RET
FBL ENDP
;*****************************
PROGRAM ENDS
;
END START
DATA SEGMENT
NUMBER1 DW 1
NUMBER2 DW 1
NUMLEN DW 3
MESS DB 'the 25th number is:','$'
DATA ENDS
;***********************
;数据定义
PROGRAM SEGMENT
MAIN PROC FAR
ASSUME CS:PROGRAM,DS:DATA
START:
;set up stack for return
PUSH DS
SUB AX,AX
PUSH AX
;set ds register to current data segment
MOV AX,DATA
MOV DS,AX
CALL FBL
LEA DX,MESS
MOV AH,09H
INT 21H
MOV AX,4C00H
INT 21H
RET
MAIN ENDP
;**************************************
FBL PROC NEAR
;
MOV AX,NUMBER1
MOV BX,AX
MOV AX,NUMBER2
ADD AX,BX
MOV NUMBER2,BX
MOV NUMBER1,AX
INC NUMLEN
CMP NUMLEN,19H
JL SECEND
SECEND:
CALL FBL
RET
FBL ENDP
;*****************************
PROGRAM ENDS
;
END START