RESTA
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, "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
;se lee el primer valor
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 a al
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 ;valor que se usa para poner algo en pantalla
mov dl,resta
int 21h
mov ah,4ch
begin endp
end
ret
.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, "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
;se lee el primer valor
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 a al
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 ;valor que se usa para poner algo en pantalla
mov dl,resta
int 21h
mov ah,4ch
begin endp
end
ret
Comentarios
Publicar un comentario