Intenta escribir un programa en lenguaje ensamblador para completar la función de suma de dos números de 1 decimal.
;Nombre del programa: adición. Misil aire-tierra
Segmento de línea adicional
Supongamos CS: adición, DS: adición
ORG 100H
Inicio: JMP start
p>First_Num DB 'Primer número: $ '
Second_Num DB 'Segundo número: $ '
Addi_Sum DB 'La suma es'
SumaASCII DB 2 DUP('0 '), ' $ '; el número ASCII de dos dígitos que es la suma de dos números.
Exit_Mark DB 0
; Subrutina
GLOBAL Get_Num: NEAR; Acepta un número 1 del teclado.
Cerca de Get_Num Proc
MOV AH, 9
INT 21H
Entrada: MOV AH, 1
INT 21H
CMP AL, 27;
JZ SET_EXPORT
CMP AL, '0'
JB ENTRADA h
CMP AL, '9'
Entrada JG
Además, 0FH
remojado en agua para suavizarlo
establecer _ Salida: INC Salir _ Marcar configurar salida
;El remojo suaviza
Get_Num End
Inicio: MOV Ax, 3
INT 10H; establece el modo de visualización de video en 80x25, modo de texto de 16 colores.
LEA DX, First_Num solicita la primera dirección de cadena de 1 dígito.
Llama a Get_Num para recibir un número 1 desde el teclado.
CMP Exit_Mark, 1
JZ Exit_Process; si se establece el indicador de salida, el programa finaliza.
MOV·Sumasiyi; guarda el primer número.
MOV, 3
XOR Co., Ltd.
INT 10H; Obtener la posición del cursor
Número de línea INC DH aumentado en 1
p>
XOR DL, DL; número de columna cero
XOR Co., Ltd.
MOV, 2
INT 10H; establece la posición del cursor hacia abajo La primera columna de una fila.
LEA DX, Second_Num solicita la segunda dirección de cadena de 1 dígito.
Llame a Get_Num para aceptar el segundo número 1 en el teclado.
Suma AL y SumASCII más dos dígitos de 1.
Guerra química y biológica
MOV BL, 10
DIV BL Cuando la suma se divide por 10, el cociente se almacena en AL y el resto se almacena en AH.
O AX, 3030H convierte el cociente y el resto en código ASCII
CMP AL, ' 0 '
JG Disp_Sum>: 0, Muestra la suma; de dos números.
MOV·Al,"; si cociente = 0, diez espacios.
Mostrar suma:
Texto MOV PTR SumASCII, AX
MOV Ah, 3
XOR Co., Ltd.
INT 10H; Obtener la posición del cursor
El número de líneas INC DH ha aumentado en 1
El número de líneas INC DH ha aumentado en 1
XOR DL, DL; número de columna cero
XOR Co., Ltd.
MOV, 2
INT 10H; de la siguiente línea.
LEA DX, Addi_Sum muestra la suma de dos números.
MOV, 9
INT 21H
Exit_Proc: MOV AX, 4C00H finaliza el programa
INT 21H
La suma termina
El final comienza