求助:汇编源程序 从键盘输入2个个位数,相加,然后显示其结果。

2024-11-19 09:32:01
推荐回答(1个)
回答(1):

data segment
rlt db 0,0,'$'
data ends
code segment
assume cs:code,ds:data
begin: mov ax,data
mov ds,ax
mov ah,1
int 21h ;输入第一个数
mov dl,al ;放dl暂存
and dl,0fh ;转换成数值
int 21h ;输入第二个数
and al,0fh ;转换为数值
add al,dl ;相加,和放在al中
xor ah,ah ;将和扩展为16位,放在ax中
mov dl,10
div dl ;和(ax)/10
or al,30h ;商转换为字符
mov rlt,al ;存到rlt中
or ah,30h ;余数转换为字符
mov rlt+1,ah ;存到rlt+1中
mov ah,9
lea dx,rlt
int 21h ;9号dos功能调用显示结果
mov ah,4ch
int 21h
code ends
end begin

程序执行时,输入的两个数之间不要加其他分隔符,比如3和4相加:
输入:34
在4后面显示07