.MODEL SMALL
.STACK 64
.DATA
N1 DB 0
N2 DB 0
RESTA DB 0
MSG1 DB "DAME EL PRIMER VALOR: " , "$"
MSG2 DB 10,13, "DAME EL SEGUNDO VALOR: " , "$"
MSG3 DB 10,13, "RESTA= " , "$"
.CODE
BEGIN PROC FAR
;DIRECCIONAMOS AL SEGMENTOS DE DATOS
MOV AX, @DATA
MOV DS, AX
;SOLICITAMOS EL PRIMER DIGITO
MOV AH, 09
LEA DX, MSG1
INT 21H
MOV AH, 01
INT 21H
SUB AL, 30H;CONVIERTE EL CARACTER EN NUMERO
MOV N1, AL
;SOLICITAMOS EL SEGUNDO DIGITO
MOV AH, 09
LEA DX, MSG2
INT 21H
MOV AH, 01
INT 21H
SUB AL, 30H;CONVIERTE EL CARACTER EN NUMERO
MOV N2, AL
;OPERACION
MOV AL, N1
SUB AL, N2
ADD AL, 30H;CONVIERTE A CARACTER
MOV RESTA, AL
MOV AH, 09
LEA DX, MSG3
INT 21H
;SE IMPRIME EL CARACTER CON EL SERVICIO 02 DE LA INT 21H
MOV AH, 02
MOV DL, RESTA
INT 21H
MOV AH, 4CH
INT 21
BEGIN ENDP
END
.STACK 64
.DATA
N1 DB 0
N2 DB 0
RESTA DB 0
MSG1 DB "DAME EL PRIMER VALOR: " , "$"
MSG2 DB 10,13, "DAME EL SEGUNDO VALOR: " , "$"
MSG3 DB 10,13, "RESTA= " , "$"
.CODE
BEGIN PROC FAR
;DIRECCIONAMOS AL SEGMENTOS DE DATOS
MOV AX, @DATA
MOV DS, AX
;SOLICITAMOS EL PRIMER DIGITO
MOV AH, 09
LEA DX, MSG1
INT 21H
MOV AH, 01
INT 21H
SUB AL, 30H;CONVIERTE EL CARACTER EN NUMERO
MOV N1, AL
;SOLICITAMOS EL SEGUNDO DIGITO
MOV AH, 09
LEA DX, MSG2
INT 21H
MOV AH, 01
INT 21H
SUB AL, 30H;CONVIERTE EL CARACTER EN NUMERO
MOV N2, AL
;OPERACION
MOV AL, N1
SUB AL, N2
ADD AL, 30H;CONVIERTE A CARACTER
MOV RESTA, AL
MOV AH, 09
LEA DX, MSG3
INT 21H
;SE IMPRIME EL CARACTER CON EL SERVICIO 02 DE LA INT 21H
MOV AH, 02
MOV DL, RESTA
INT 21H
MOV AH, 4CH
INT 21
BEGIN ENDP
END
Comentarios
Publicar un comentario