编写程序,要求从键盘输入两个二位十进制,在程序中将二数相加,并显示其和

c02129 2008-12-11 07:30:13
编写程序,要求从键盘输入两个二位十进制,在程序中将二数相加,并显示其和
本人编了一个程序,错的,谁能帮我看看错在哪里?谢谢!(对不起,我还没得分!)
本人上课不专心啊,什么都没学到!
data segment
num1 db 3 dup(?)
num2 db 3 dup(?)
code segment
assume cs:code
start:
mov ax,data
mov ds,ax
mov si,offset num1
mov cx,02h
;输入一组数
mov ah,01h
int 21h
mov dl,al
sub dl,30h
shl ax,1
mov dx,ax
shl ax,1
shl ax,1
dd ax,dx
push si
push bx
mov [si],al

mov ah,01h
int 21h
mov dl,al
sub dl,30h
add [si],al
mov al,[si]

mov bx,offset num2
mov cx,02h
;再输入一组数
mov ah,01h
int 21h
mov dl,al
sub dl,30h
shl ax,1
mov dx,ax
shl ax,1
shl ax,1
add ax,dx
mov [bx],al
mov ah,01h
int 21h
mov dl,al
sub dl,30h
add [bx],al

;把两组数求和
adc [si],[bx]
mov al,[si]
cmp al,64h
jg next
mov 02h
int 21h

next: mov ax,31h
int 10h
mov al,[si]
mov 02h
int 21h
mov ah,4ch
int 21h
pop bx
pop si
ret
code ends
end start
...全文
958 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xtdumpling 2008-12-12
  • 打赏
  • 举报
回复
Look!
comment ~
编写程序,要求从键盘输入两个二位十进制,在程序中将二数相加,并显示其和
本人编了一个程序,错的,谁能帮我看看错在哪里?谢谢!(对不起,我还没得分!)
本人上课不专心啊,什么都没学到!
~
data segment
num1 db 0;3 dup(?)
num2 db 0;3 dup(?)
data ends
code segment 'code'
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov si,offset num1

;输入一组数
mov ah,01h
int 21h

sub al,'0';;
mov dl,al
mov cl,3
shl al,cl
shl dl,1
add al,dl
mov [si],al

mov ah,01h
int 21h

sub al,'0'
add [si],al

mov ah,01h
int 21h

mov bx,offset num2
;再输入一组数
mov ah,01h
int 21h

sub al,'0'
mov dl,al
mov cl,3
shl al,cl
shl dl,1
add al,dl
mov [bx],al
mov ah,01h
int 21h

sub al,'0'
add [bx],al

mov ah,02h
mov dl,0dh
int 21h
mov dl,0ah
int 21h

;把两组数求和
mov al,[bx]
add al,[si];al=sum

xor ah,ah

mov cl,100
div cl
mov bx,ax
test al,al
jz @f
add al,'0'
mov dl,al
mov ah,02h
int 21h
@@:
mov al,bh
xor ah,ah
mov cl,10
div cl
mov bx,ax
add al,'0'
mov dl,al
mov ah,02h
int 21h
add bh,'0'
mov dl,bh
mov ah,02h
int 21h
mov ah,4ch
int 21h
code ends
end start

input example:
12 34<Enter>
or
02 08<Enter>
Simskyc 2008-12-12
  • 打赏
  • 举报
回复
data ends 没有?

dd ax,dx ?

mov 02h ?
不知道是干什么

21,497

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧