| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2562 人关注过本帖, 1 人收藏
标题:求教一个问题:十进制到十六进制数转换的程序
只看楼主 加入收藏
小鸟向前飞
Rank: 1
等 级:新手上路
帖 子:72
专家分:0
注 册:2007-10-25
结帖率:100%
收藏(1)
 问题点数:0 回复次数:6 
求教一个问题:十进制到十六进制数转换的程序
转换几次以后就返回系统
从键盘取得一个十进制数,然后把这个十进制数转换成十六进制数显示出来
具体程序:
decihex   segment
   assume   cs:  decihex
main   proc   far
repeat:
   call   decibin
   call   crlf
   call   binihex
   call   crlf
   sub   dx,dx    ;用于控制转换次数
   push   dx
   mov   dx,3
   dec   dx
   cmp   dx,1
   jnb   repeat  
   ret
main   endp
decibin   proc   near         ;从键盘取得十进制数,保存在BX中
   mov   bx,0
newchar:
   mov   ah,1
   int   21h
   sub   al,30h
   jl   exit
   cmp   al,9d
   jg   exit
   cbw
   
   xchg   ax,bx
   mov   cx,10d
   mul   cx
   xchg   ax,bx
   add   bx,ax
   jmp   newchar
exit:
   ret
decibin   endp
binihex   proc   near           ;用十六进制形式显示BX中的数
   mov   ch,4
rotate:
   mov   cl,4
   rol   bx,cl
   mov   al,bl
   and   al,0fh
   add   al,30h
   cmp   al,3ah
   jl   printit
   add   al,7h
printit:
   mov   dl,al
   mov   ah,2
   int   21h
   dec   ch
   jnz   rotate
binihex   endp
crlf   proc   near
   mov   dl,0dh
   mov   ah,2
   int   21h
   mov   dl,0ah
   mov   ah,2
   int   21h
   ret
crlf   endp
decihex   ends
   end   main


为什么蓝色部分不能控制转换次数,程序每次都无限循环进行?
搜索更多相关主题的帖子: 十六进制 十进制 
2007-12-04 20:54
永夜的极光
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2721
专家分:1
注 册:2007-10-9
收藏
得分:0 
mov   dx,3
   dec   dx
   cmp   dx,1
这三句反复执行到,dx的值一直在3和2之间变化

从BFS(Breadth First Study)到DFS(Depth First Study)
2007-12-04 20:56
小鸟向前飞
Rank: 1
等 级:新手上路
帖 子:72
专家分:0
注 册:2007-10-25
收藏
得分:0 
楼上能说具体点吗?

未知是最大的诱惑.
2007-12-04 21:41
轻飘飘
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-11-26
收藏
得分:0 
十进制转成十六进制程序
 PUSH DX
 MOV DX,OH
 INC COUNT
 CMP COUNT,5
2007-12-04 22:05
小鸟向前飞
Rank: 1
等 级:新手上路
帖 子:72
专家分:0
注 册:2007-10-25
收藏
得分:0 
sub   dx,dx
   push   dx
   mov   dx,3
repeat:
   call   decibin
   call   crlf
   call   binihex
   call   crlf
   dec   dx
   cmp   dx,1
   jnb   repeat
   ret
写成这样,还是无限次循环,等待解答...

[[italic] 本帖最后由 小鸟向前飞 于 2007-12-5 09:35 编辑 [/italic]]

未知是最大的诱惑.
2007-12-05 09:27
小鸟向前飞
Rank: 1
等 级:新手上路
帖 子:72
专家分:0
注 册:2007-10-25
收藏
得分:0 
继续等解答

未知是最大的诱惑.
2007-12-05 21:10
thinksoft
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-5-25
收藏
得分:0 
2008-05-25 16:09
快速回复:求教一个问题:十进制到十六进制数转换的程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026231 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved