Como imprimir un numero de 6 digitos en emu8086
Publicado por Felipe Jose (7 intervenciones) el 30/10/2020 00:43:19
Buenas estoy realizando una multiplicacion entre numeros de hasta 3 digitos, lo ultimo que me falta es mostrar el resultado en pantalla pero no tengo idea de como poder mostrar un numero de hasta 6 digitos (ya que 999*999=998001), alguien me podria ayudar porfavor?
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
.model small
.stack 100
.data
u db 0
d db 0
c db 0
r dw 0
u1 db 0
d1 db 0
c1 db 0
r1 dw 0
msg db 10,13,7,"Ingrese un numero:",'$'
msg2 db 10,13,7,"Ingrese segundo numero:",'$'
msg1 db 10,13,7,"resultado:",'$'
.code
mov ax,@data
mov ds, ax
mov ah,09h
lea dx,msg
int 21h
mov ah,01h
int 21h
sub al,30h
mov c, al
mov ah,01h
int 21h
sub al,30h
mov d, al
mov ah,01h
int 21h
sub al,30h
mov u, al
mov al,c
mov bl,100
imul bl
add al,u
mov r,ax
mov al,d
mov bl,10
imul bl
AAD
add r,ax
mov ax,@data
mov ds, ax
mov ah,09h
lea dx,msg2
int 21h
mov ah,01h
int 21h
sub al,30h
mov c1, al
mov ah,01h
int 21h
sub al,30h
mov d1, al
mov ah,01h
int 21h
sub al,30h
mov u1, al
mov al,c1
mov bl,100
imul bl
add al,u1
mov r1,ax
mov al,d1
mov bl,10
mul bl
AAD
add r1,ax
mov ax,r
mov bx,r1
imul bx ;aqui el resultado estaria en AX, o en AX/DX si es un numero mayor a 16bits
Valora esta pregunta


0