汇编语言--键盘输入任意两个十进制数 ,以十进制数的形式输出其和
时间: 2024-04-29 20:26:08 浏览: 118
用汇编语言编程实现求两个数的和,并用十进制输出
4星 · 用户满意度95%
好的,让我帮您解决这个问题。您可以使用汇编语言中的INT 21H功能来读取键盘输入的两个十进制数,接着将它们相加并将结果存储在一个寄存器中,最后使用INT 21H功能以十进制数形式输出结果即可。以下是一段简单的汇编代码示例:
```
.model small
.stack 100h
.data
num1 db ?
num2 db ?
result db 8 dup ('$')
.code
main proc
mov ax, @data
mov ds, ax
; 读取第一个十进制数
mov ah, 01h
int 21h
sub al, 30h
mov num1, al
; 读取第二个十进制数
mov ah, 01h
int 21h
sub al, 30h
mov num2, al
; 将两个数字加起来
mov al, num1
add al, num2
; 将结果存储在result数组中
mov ah, 0
mov bl, 10
mov cl, 0
add_digit:
cmp al, 0
je output_result
div bl
add ah, 30h
mov result[cl], ah
inc cl
mov ah, 0
jmp add_digit
output_result:
; 反转结果数组中的数字
mov bx, offset result
mov di, cl
dec cl
mov si, 0
swap_digit:
cmp si, cl
jge print_result
mov al, result[si]
mov dl, result[cl]
mov result[si], dl
mov result[cl], al
inc si
dec cl
jmp swap_digit
print_result:
; 输出结果
mov ah, 09h
mov dx, offset result
int 21h
mov ah, 4ch
int 21h
main endp
end main
```
请注意,这只是一个简单的示例代码,实际的实现可能因汇编语言版本而异。您应该在使用前仔细检查并进行必要的修改。
阅读全文