********ESTE
PROGRAMA CALCULA EL FACTORIAL*******************
TITLE factorial
.MODEL SMALL
.DATA
CAD DB 0DH,0AH,´ESTE PROGRAMA CALCULA EL
FACTORIAL $´
CAD1 DB 0DH,0AH,´ DAME EL NUMERO $´
CAD2 DB 0DH,0AH,´ ERROR $´
CAD3 DB 0DH,0AH,´ DESEA CALCULAR OTRO NUMERO
S/N $´
DATO DB ?,´$´
DATO1 DB ?,´$´
.CODE
MAIN PROC
MOV AX,@DATA
MOV DS,AX
START:
LEA DX,CAD
MOV AH,9
INT 21H
CALCULO:
LEA DX,CAD1
MOV AH,9
INT 21H
MOV AH,1
INT 21H
MOV DATO,AL
ADD AL,30
CMP AL,´0´
JNGE MENSAJE
CMP AL,´9´
JNG MENSAJE
CMP AL,´A´
JNGE CONTINUE
CMP AL,´Z´
JNG CONTINUE
MENSAJE:
LEA DX,CAD3
MOV AH,9
INT 21H
JMP CALCULO
CONTINUE:
LOOP:
MOV CX,DATO
ADD DATO,DATO
DEC CX
JNZ LOOP
MOV DX,DATO
MOV AH,2
INT 21H
LEA DX, CAD4
MOV AH,9
INT 21H
MOV AH,1
INT 21H
CMP AL,´S´
JE START
CMP AL,´N´
FIN:
MOV AH,4CH
INT 21H
MAIN END ENDP
END MAIN