📄 time.asm
字号:
;统计游戏有效时间的子程序
;入口参数:主程序记录上一当前时刻的hour,minute,second
;出口参数:子程序统计实际所用时间的zhour,zminute,zsecond
;注意每次重新启动计时功能前需将hour,minute,second即时化
tdata segment
zhour db 0
zminte db 0
zsecond db 0
tdata ends
tstack segment stack
db 100 dup(0)
tstack ends
tcode segment
assume ds:tdata,ss:tstack,cs:tcode
time proc far
push ax
push bx
push cx
push dx
mov ah,2ch ;读取当前时刻
int 21h
mov ah,ch ;存储当前时刻
mov al,cl
mov bh,dh
cmp dh,second
jns setsec
dec cl
add dh,60
setsec: sub dh,second ;设置秒数
add zsecond,dh
cmp zsecond,60
jb dealmin
sub zsecond,60
inc zminute
dealmin:cmp cl,minute
jns setmin
del ch
add cl,60
setmiu: sub cl,minute ;设置分钟数
add zminute,cl
cmp zminute,60
jb dealhou
sub zminute,60
inc zhour
dealhou:cmp ch,hour
jnb sethou
add ch,24
sethou: sub ch,hour ;设置小时数
add zhour,ch
mov hour, ah
mov minute,al
mov second,dh
pop dx
pop cx
pop bx
pop ax
ret
time endp
tcode ends
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -