- Get link
- X
- Other Apps
Esta vez veremos programas muy sencillos que suman o restan dos numeros, pero ojo, solamente de UNA CIFRA ya que al teclear el número, automaticamente lo tomará como si fuera el valor final.
Suma de 2 Números:
Código:


ORG 100H
.MODEL SMALL
.STACK 64
.DATA
N1 DB 0
N2 DB 0
RESTA DB 0
msg1 DB "INGRESE EL PRIMER VALOR:", '$'
msg2 DB 10,13, "INGRESE EL SEGUNDO VALOR:", '$'
msg3 DB 10,13, "Resultado= ", '$'
.CODE
BEGIN PROC FAR
;DIRECCIONAMOS AL SEGMENTOS DE DATOS
MOV AX,@DATA
MOV DS,AX
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 ;LO QUE ESTA EN N1 LO ASIGNA
ADD AL,N2
;SE HACE A LA INVERSA
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 ;VALOR QUE SE USA PARA PONER ALGO EN PANTALLA
MOV DL,RESTA
INT 21H
MOV AH,4CH
BEGIN ENDP
END
Resta de 2 Números
ORG 100H
.MODEL SMALL
.STACK 64
.DATA
N1 DB 0
N2 DB 0
RESTA DB 0
msg1 DB "INGRESE EL PRIMER VALOR:", '$'
msg2 DB 10,13, "INGRESE EL SEGUNDO VALOR:", '$'
msg3 DB 10,13, "Resultado= ", '$'
.CODE
BEGIN PROC FAR
;DIRECCIONAMOS AL SEGMENTOS DE DATOS
MOV AX,@DATA
MOV DS,AX
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 ;LO QUE ESTA EN N1 LO ASIGNA
SUB AL,N2
;SE HACE A LA INVERSA
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 ;VALOR QUE SE USA PARA PONER ALGO EN PANTALLA
MOV DL,RESTA
INT 21H
MOV AH,4CH
BEGIN ENDP
END
- Get link
- X
- Other Apps
Comments
Post a Comment