主题:跪求各位高手教我做秒表
leleluke
[专家分:0] 发布于 2007-11-02 22:03:00
各位高手教教小弟做两个汇编程序,不胜感激
1、做一个秒表,要求有开始、暂停和清零
2、把系统时间用表盘的形式显示出来
回复列表 (共2个回复)
沙发
leleluke [专家分:0] 发布于 2007-11-02 23:57:00
很急啊,各位高手能帮帮忙吗
板凳
黎辉monkey [专家分:0] 发布于 2007-11-16 12:22:00
DATAS SEGMENT
MSG1 DB 'Please Input The Time You Want To Delaying:$'
MSG2 DB 'Rest Time Is:......$'
MSG3 DB 'DELAY IS ENDING !$';此处输入数据段代码
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
LEA DX,MSG1
MOV AH,09H
INT 21H
MOV AH,01
INT 21H
MOV BH,AL
MOV AH,01
INT 21H
MOV BL,AL
NEXT:CMP BX,3030H; 判断是否继续
JE QUIT
CMP BL,30H;判断个位是否有0变9,十位减1[
JZ CHANGE
JMP OUT1
CHANGE:MOV BL,39H
DEC BH
JMP OUT2;]
OUT1:DEC BL
OUT2:MOV DL,0DH;显示剩余时间[
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA DX,MSG2
MOV AH,09H
INT 21H
MOV AH,02
MOV DL,BH
INT 21H
MOV AH,02
MOV DL,BL
INT 21H;]
MOV CX,53234;延使程序-1s
MOV SI,4000
WAITING:LOOP WAITING
DEC SI
JNZ WAITING
JMP NEXT
QUIT:MOV DL,0DH;延长的时间结束
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA DX,MSG3
MOV AH,09H
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
输入时间的时候必须先输十位,在个位;00-99秒都可以
END START[size=3][/size]
我来回复