| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1461 人关注过本帖
标题:[求助]在编写一个时钟遇到的一个头晕的问题
取消只看楼主 加入收藏
CHEN5354520
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-4-18
收藏
 问题点数:0 回复次数:2 
[求助]在编写一个时钟遇到的一个头晕的问题
这个问题是这样的:程序如下,没有错!
如果源程序的扩展名为 TIME.ASM 得不到所要的功能
如果是别的扩展名就可以!
这是为什么
有那位大侠tell me
.MODEL SMALL
.DATA
.CODE

MAIN PROC
AAAA: MOV AH,02
MOV BH,0
MOV BL,34H
MOV DX,1220
INT 10H
MOV AH,2CH
INT 21H ;调用DOS中断查询系统时间

MOV AL,CH ;取得的小时数放到AL,为调用子程序准备入口参数
CALL DISP ;调用子程序,显示小时数

MOV DL,':'
MOV AH,02H
INT 21H ;显示小时与分钟间的“:”

MOV AL,CL ;取得的分钟数放到AL,为调用子程序准备入口参数
CALL DISP ;调用子程序,显示分钟数

MOV DL,':' ;显示分钟与秒间的“:”
MOV AH,02H
INT 21H

MOV AL,DH ;取得的秒数放到AL,为调用子程序准备入口参数
CALL DISP ;调用子程序,显示秒数


JMP AAAA

MOV AH,4CH
INT 21H ;退出返回DOS
MAIN ENDP
;子程序名:disp
;子程序功能:将两位十六进制数转换为十进制数显示出来(这里只显示十位和个位)
;入口参数:AL存放要转换的十六进制数
;出口参数:无
disp proc far

push ax
push cx
push dx
mov cl,64H
mov ah,0
div cl
mov al,ah ;余数放到AL,最高位(百位)不必显示
mov ah,0
mov cl,0AH
div cl
mov dh,ah
mov dl,al
or dl,30h
mov ah,02h
int 21h ;display sec.
mov dl,dh
add dl,30h
mov ah,02h
int 21h ;display 3
pop dx
pop cx
pop ax
ret

disp endp

END
搜索更多相关主题的帖子: 时钟 MOV 头晕 INT ASM 
2007-05-25 12:14
CHEN5354520
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-4-18
收藏
得分:0 

不错,这个程序是死循环的,我有个习惯在程序调试时是用死循环的
我学汇编刚二个多月,不是很会写程序!


我虽然不是最棒的,但我却要做最棒的! 朋友们请相信只要努力了,那就一定会有收获的!
2007-05-30 12:06
CHEN5354520
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-4-18
收藏
得分:0 

这个问题已经解决了
原来在DOS中有TIME.EXE


程序中加

MOV AH,0BH
INT 21H
CMP AL,0FFH
JZ EXIT

那就OK了


我虽然不是最棒的,但我却要做最棒的! 朋友们请相信只要努力了,那就一定会有收获的!
2007-05-31 12:02
快速回复:[求助]在编写一个时钟遇到的一个头晕的问题
数据加载中...
 
   



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

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