1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
| .model small
.stack 64
.data
n1 db 0
n2 db 0
suma db 0
msg1 db "Dame el primer valor",'$'
msg2 db 10,13,"Dame el segundo valor",'$'
msg3 db 10,13,"Suma=",'$'
.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
add al,n2
add al,30h ;Convierte a caracter
mov suma,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,suma
int 21h
mov ah,4ch
int 21h
Begin endp
end
|
No hay comentarios:
Publicar un comentario