求帮改,想要自定义输入倒计时

img

data segment
s1 db 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EH ;0~F
time dw ?
x db 45 ;延迟倒计时时间
y dw 20000 ;延迟输入显示时间
data ends
stack segment para stack
db 64 dup(?)
stack ends
code segment
assume cs:code,ds:data,ss:stack
start:
push ds
mov ax,0
push ax
mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax

    mov dx,66h                          ;8255控制器端口地址
    mov al,10000011B               ;方式0,A输出,B输入,C输入
    out dx,al                                ;输出控制字
    mov time,0
    mov bx,offset s1

begin:

    mov dx,62h                         
    in al,dx                                 ;输入
    cmp al,0f0H                        
    jne shuru
    mov dx,64h
    cmp al,0FEh                         ;al与1111 1110H比较,判断PC0(开始)是否工作                     
    jne begin                             ;没工作,跳到begin

k1:
mov dx,64h ;c口
in al,dx ;c口输入
cmp al,0dfh ;al与1111 1101H比较,判断PC1(复位)是否工作
je k2 ;相等,执行复位功能,跳到K2
mov dx,64h ;c口
in al,dx ;c口输入
cmp al,0bfh ;al与1111 1011比较,判断PC2(暂停)是否工作
je k3 ;相等,执行暂停功能,一直输出当前的数,跳到K3
call shuchu ;输出当前数字
dec x ;延时,直到x减到0时继续执行
jnz k1 ;判断x等不等于0
mov x,45 ;time每减次1,都需要延时,重新赋值x=45
dec time ;倒计时
jz k2 ;判断倒计时结没结束
jmp k1
k2:
mov time,0 ;复位就是将time变成0,输出
call shuchu
jmp begin
k3:
call shuchu ;暂停就是一直输出当前数字
mov dx,64h
mov dx,64h ;c口
in al,dx ;c口输入
cmp al,0bfh ;al与1111 1011比较,判断PC2(暂停)工没工作
je k3 ;工作继续执行
jmp k1 ;不工作,回到最开始,继续倒计时

shuru:
mov dx,62h
in al,dx

a:
dec y ;显示输入的延迟
jnz a ;延时结没结束
mov y,20000 ;再赋值
call shuchu ;输出
jmp begin

shuchu proc
mov dx,al
xlat ;xlat查表功能。
mov dx,60h ;a口
out dx,al ;输出a口
call delay ;延迟灯亮

ret
shuchu endp

delay proc near
push bx ;两次循环延时
push cx ;10次0ffh~0
mov bx,10
t0: mov cx,0ffh
t1: loop t1
dec bx
jnz t0
pop cx
pop bx
ret
delay endp

code ends
end start


import datetime

def calculate_age(birth_date):
    today = datetime.date.today()
    age = today.year - birth_date.year - ((today.month, today.day) < (birth_date.month, birth_date.day))
    return age

# 输入出生日期
birth_date = datetime.date(1990, 1, 1)

# 计算年龄并输出结果
age = calculate_age(birth_date)
print("您的年龄是:{}岁".format(age))