分支程序设计的问题

taogaowei 2003-11-18 04:19:40
目的:如果输入数字在1-5之间显示Input right !,如果不是则显示Input erro !
.model small
.stack 256
.data
msg db 'Input number 1-5:',0dh,0ah,'$'
rmsg db 'Input right !',0dh,0ah,'$'
ermsg db 'Input erro !',0dh,0ah,'$'
.code
.startup
start1: mov dx,offset msg
mov ah,9
int 21h
mov ah,1
int 21h
cmp al,'1'
jb erin
cmp al,'8'
ja erin
jmp done
erin: mov dx,offset ermsg
rtin: mov dx,offset rmsg
done: mov ah,9
int 21h
.exit 0
end
可是上面的程序不能实现,哪里错了?
不是作业,是我自己尝试学习分支时遇到的问题
也请大家给出设计分支程序的经验和技巧,谢谢
...全文
109 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
taogaowei 2003-11-18
  • 打赏
  • 举报
回复
是8086的,正在学习呢
WYC2300 2003-11-18
  • 打赏
  • 举报
回复
你上面写的是不是8086的哦 ?
好象有些语句我都没见过哦
PC8086 2003-11-18
  • 打赏
  • 举报
回复
楼上做的不错!!!
jpshaoping 2003-11-18
  • 打赏
  • 举报
回复
你执行mov dx,offset ermsg之后,没有马上显示,而是在执行mov dx,offset rmsg
所以dx里面永远是rmsg的地址,显示出来的都是input right
csdsjkk 2003-11-18
  • 打赏
  • 举报
回复
.model small
.stack 256
.data
msg db 'Input number 1-5:',0dh,0ah,'$'
rmsg db 'Input right !',0dh,0ah,'$'
ermsg db 'Input erro !',0dh,0ah,'$'
.code
.startup
start1: mov dx,offset msg
mov ah,9
int 21h
mov ah,1
int 21h
cmp al,'1'
jb erin
cmp al,'5' ;'8'
ja erin
jmp rtin
erin: mov dx,offset ermsg
jmp done
rtin: mov dx,offset rmsg
done: mov ah,9
int 21h
.exit 0
end
jpshaoping 2003-11-18
  • 打赏
  • 举报
回复
.model small
.stack 256
.data
msg db 'Input number 1-5:',0dh,0ah,'$'
rmsg db 'Input right !',0dh,0ah,'$'
ermsg db 'Input erro !',0dh,0ah,'$'
.code
.startup
start1: mov dx,offset msg
mov ah,9
int 21h
mov ah,1
int 21h
cmp al,'1'
jb erin
cmp al,'5'
ja erin
mov dx,offset rmsg
jmp done
erin: mov dx,offset ermsg
done: mov ah,9
int 21h
.exit 0
end

21,496

社区成员

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

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