文件名称:在DOS环境下在右上角显示系统时间
文件大小:4KB
文件格式:ASM
更新时间:2009-03-15 02:52:39
另类其它 控件 源码 资源
CODE SEGMENT ASSUME CS:CODE START: JMP NEXT BUFF DW 0 BUFF1 DW 2 DUP(0) MAIN: PUSHF CALL DWORD PTR CS:BUFF1 PUSH AX PUSH BX PUSH CX PUSH DX XOR BH,BH MOV AH,3 INT 10H ;读光标位置 MOV CS:BUFF,DX MOV AH,2 XOR BH,BH MOV DX,47H INT 10H ;置光标位置 MOV AH,2 INT 1AH ;读系统时间 PUSH DX PUSH CX POP BX PUSH BX CALL SHOW1 CALL SHOW2 POP BX XCHG BH,BL CALL SHOW1 CALL SHOW2 POP BX CALL SHOW1 MOV DX,CS:BUFF MOV AH,2 XOR BH,BH INT 10H ;置光标位置 POP DX POP CX POP BX POP AX IRET ;中断返回 ;以下为将系统时间转化为对应的ASCLL码显示的程序 SHOW1 PROC NEAR PUSH BX MOV CL,4 MOV AL,BH SHR AL,CL ADD AL,30H ;转换为ASCLL码 CALL SHOW CALL XJB POP BX MOV AL,BH AND AL,0FH ADD AL,30H CALL SHOW CALL XJB RET SHOW1 ENDP ;以下为显示”:“符号的程序 SHOW2 PROC NEAR MOV AL,‘:‘ CALL SHOW CALL XJB RET SHOW2 ENDP ;以下是对光标的处理的程序 XJB PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX MOV AH,3 MOV BH,0 INT 10H ; 读光标位置 INC DL MOV AH,2 INT 10H ; 置光标位置 POP DX POP CX POP BX POP AX RET XJB ENDP ;以下是将AL里的内容显示的程序 SHOW PROC NEAR PUSH AX PUSH BX PUSH CX MOV AH,09H MOV BX,2FH MOV CX,1 INT 10H ;在光标位置显示字及其属性 POP CX POP BX POP AX RET SHOW ENDP;以下为取中断,保存中断,设置新的这段类型的程序 NEXT: PUSH CS POP DS MOV AX,351CH ;取中断向量 INT 21H MOV BUFF1,BX ;保存偏移地址 MOV BX,ES ;保存段地址 MOV BUFF1+2,BX MOV DX,OFFSET MAIN MOV AL,1CH ; 中断类型放日AL MOV AH,25H ; 设置中断向量的功能调用 INT 21H ;改变中断向量 LEA DX,NEXT SUB DX,OFFSET START MOV CL,4 SHR DX,CL ADD DX,11H MOV AX,3100H INT 21H CODE ENDS END START