电子日历时钟系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

电子日历时钟系统

stack segment stack

dw64 dup(?)

stack ends

clearscreen macro ;清屏宏

push ax

push bx

push cx

push dx

mov ah,6

mov al,0 ;清屏

mov bh,7 ;填充字符属性

mov cx,0000h ;左上角坐标 (0,0)

mov dx,184fh ;上卷窗口右下角坐标 (24,79)

int 10h

pop dx

pop cx

pop bx

pop ax

endm

showline MACRO STR,STA,LEN,POS,COL ;显示字符串宏

PUSH DX

PUSH BX

PUSH AX

MOV BP,OFFSET STR

ADD BP,STA

MOV DX,POS

MOV CX,LEN

MOV BX,COL

MOV AX,1301H

INT 10H

POP AX

POP BX

POP DX

endm

data segment;数据定义

str1 db'TIME'

str2 db'DATE'

str3 db'METER'

str41 db'BEEP OFF'

str42 db'BEEP ON '

string db'TIME DATE METER BEEP OFF'

time db'00:00:00';定义相关时间。日期,闹钟,秒表的格式

date db'0000-00-00'

meter db'00:00:00:00'

beep db'00:00:00'

year dw 0 ;日期定义

mouth db 0

day db 0

hour db 0 ;时间定义

minute db 0

second db 0

mhour db 0 ;秒表定义

mminute db 0

msecond db 0

mmilise db 0

hours db 0 ;闹钟定义

minutes db 0

seconds db 0

sbuf db'00'

sbufy db'0000'

flg1 db 0 ;定义标志位用于实现跳转

flg2 db 0

flg3 db 0

mess1 db'off$';定义闹钟的开关

mess2 db'on $'

data ends

code segment

assume cs:code, ds:data

main proc far ;主函数段间调用

mov ax, data

mov ds, ax

mov es, ax

mov ah,01h

mov cx,2000h

int 10h

main endp

function1: ;功能一

mov flg1,0

clearscreen

showline string,0,24,0a20h,0001h ;功能一初始化显示 showline str1,0,4,0a20h,0029h

showline time,0,8,0b20h,0004h

call gettime ;调用系统时间

call showtimeall

N11: call showtime

call getchar

cmp al, 'a'

jne M11

call settime

M11: cmp al, 'm'

jne M12

jmp function2

M12: cmp al, 'q'

je quit

jmp N11

function2: ;功能二

mov flg1,3

clearscreen

showline string,0,24,0a20h,0001h ;功能二初始化显示 showline str2,0,4,0a25h,0029h

showline date,0,10,0b20h,0004h

call getdate ;调用系统日期

call showdateall

N22: call getchar

cmp al, 'a'

jne N2

call setdate

N2: cmp al, 'q'

je quit

cmp al, 'm'

jne N22

jmp function3

function3: ;功能三

clearscreen

showline string,0,24,0a20h,0001h ;功能三初始化显示 showline str3,0,5,0a2ah,0029h

showline meter,0,11,0b20H,0004H

N33:

mov mhour,0

mov mminute,0

mov msecond,0

mov mmilise, 0

Kt: call getchar

cmp al, 'a'

jne M31

call resetmeter

相关文档
最新文档