Escribir un programa usando programación
; Ingrese dos números desde el teclado para agregar: solo necesita cambiar data1, data2 y sun a add01, add02 y Sum0 respectivamente. Defina el modo de almacenamiento del programa.
.stack; definir segmento de pila
.data; definir segmento de datos
data1 db 81; p > db 81 dup(0); también puede ser db 81 dup(?)
data2 db 81
db 0
db 81 dup(0)
string1 db 'numbe1 es $'; define la cadena que se mostrará en el segmento de datos
string2 db 'numbe2 es $'
string3 db 'sum es $ '
.code; Definir segmento de código
.startup; Punto de inicio del programa, establecer DS, SS
mov dx, cadena de desplazamiento1; 9
mov ah, 09h
int 21h mov dx, offset data1; ingresa la primera cadena desde el teclado
mov ah, 0ah
int 21h
mov dl, 0ah; salto de línea
mov ah, 02h
int 21h mov dl, 0dh;
mov ah, 02h
int 21h mov dx, offset string2; use la función número 9 para llamar a la información de visualización
mov ah, 09h
int 21h mov dx, offset data2; ingresa la segunda cadena desde el teclado
mov ah, 0ah
int 21h mov dl, 0ah; ah, 02h
int 21h mov dl, 0dh; retorno de carro
mov ah, 02h
int 21h
mov dx, desplazamiento string3; use la función No. 9 Llamar a mostrar información
mov ah, 09h
int 21h llamar suma; llamar a subrutina.salir 0, regresar a la definición de subrutina DOSSUM;
mov bx
, 0; suma
mov cx, 0
clc
mov si, desplazamiento datos1
mov cl, [si 1]
agregar si,cx
mov di,offset data2
agregar di,cx
LOPA1:
mov ax, [si]
xchg al, ah
and ax, 0f0fh y, haga que el bit alto sea cero, incluso si elimina el bit alto, también puede usar la resta para; restar 30
mov bx, [di]
xchg bl, bh
and bl, 0fh
adc al, bl; con carry
aaa ; ajustar decimal
xchg al, ah
mov word ptr[si], ax
dec si p>
dec di
dec cl
jne LOPA1
jnc ncf
mov si, desplazamiento de datos1
mov cl, [ si 1]
inc si
mov byte ptr[si], 1
jmp prinncf: mov si, offset data1
mov cl, [si 1]
inc cl
inc si
mov byte ptr [si], 0
cmp byte ptr[ si], 0
je Z0
prin:
mov dl, byte ptr [si]
añadir dl, '0'
mov ah, 02h
int 21hZ0:
inc si
dec cl
jne prin
p>
RET
SUM ENDP
; Utilice la llamada de función para mostrar información
; salir 0 ; punto final del programa, volver a DOS
fin de la compilación
¿Está satisfecho con la respuesta anterior?