DOS 显示倒计时

@echo off
d:
cd D:
set num=6
:slz
if %num% equ 0 (goto:end) else set /a num-=1
echo %num% 秒后自动执行另一个命令
choice /t 1 /d y /n >nul&cls
goto:slz
:end

pause
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的汇编程序,实现了一个红绿灯带倒计时的功能。在这个程序中,红绿灯的状态通过一个变量 saved_state 来保存,可以通过改变 saved_state 的值来改变红绿灯的状态。 ``` ; 汇编红绿灯带倒计时程序 ORG 0x100 ; 程序入口 saved_state DB 0 ; 保存红绿灯的状态 count DB 0 ; 倒计时计数器 START: MOV AX, @DATA ; 初始化数据段寄存器 MOV DS, AX MOV AH, 09H ; 显示提示信息 MOV DX, OFFSET PROMPT INT 21H MOV AH, 01H ; 获取用户输入 INT 21H SUB AL, '0' ; 转换为数字 MOV count, AL MAIN_LOOP: CALL DELAY ; 延时1秒 DEC count ; 计数器减1 CMP count, 0 ; 判断计数器是否为0 JNE MAIN_LOOP ; 如果计数器不为0,继续循环 MOV AH, 02H ; 清屏 MOV DL, 0 INT 21H MOV AH, 09H ; 显示倒计时结束提示信息 MOV DX, OFFSET END_PROMPT INT 21H MOV AH, 4CH ; 返回DOS INT 21H DELAY: ; 延时1秒 MOV CX, 0FFFFH MOV DX, 0FFFFH DELAY_LOOP: DEC DX JNE DELAY_LOOP DEC CX JNE DELAY_LOOP RET PROMPT DB '请输入倒计时时间(秒):$' END_PROMPT DB '倒计时结束!$' END START ; 程序结束 ``` 在这个程序中,我们使用了一个简单的延时函数 DELAY,通过循环减少计数器的值来实现延时。在主循环中,我们首先调用 DELAY 函数延时1秒,然后将计数器减1。循环执行这个过程,直到计数器的值为0,表示倒计时结束。在倒计时结束后,程序会清屏,并显示一个提示信息,然后返回DOS。 请注意,这个程序只是一个简单的示例,可能还需要进行优化和改进,以实现更加稳定和可靠的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值