显示时间
TIME1 DB 'Current time is $'
TIME2 DB '00:00:00',0DH,0AH,'$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
;LEA DX,TIME1 ;数据段时间提示数据显示输出
;MOV AH,9 ;Dos功能调用(21H)
INT 21H
MOV AH,2 ;Dos功能调用,2H 获得系统时间
INT 1AH ;Dos功能调用(1AH)
MOV AX,CX ;CX中为分钟和小时
MOV CX,2
LEA SI,TIME2
CALL NUMTOASCII
MOV AH,AL
MOV CX,2
LEA SI,TIME2+3
CALL NUMTOASCII
MOV AH,DH
MOV CX,2
LEA SI,TIME2+6
CALL NUMTOASCII
LEA DX,TIME2
MOV AH,9
INT 21H
MOV AX,4C00H
INT 21H
NUMTOASCII PROC ;这个函数完成了,重AX提取出它的16位的内容,保存在SI为首地址的地方里面,CX的表示
;CX是个数。AX是从AH开始有效的.
PUSH AX
PUSH BX
PUSH SI
LP: PUSH CX
MOV CH,0
MOV CL,4
ROL AX,CL
MOV BL,AL
AND BL,0FH
OR BL,30H
MOV [SI],BL
POP CX
INC SI
LOOP LP
POP SI
POP BX
POP AX
RET
NUMTOASCII ENDP
ECH0 PROC
JCXZ ECH02
MOV BH,0
MOV AH,2
INT 10H
MOV AL,20H
MOV AH,9
INT 10H
MOV AH,0EH
ECH01:
MOV AL,[SI]
INC SI
INT 10H
LOOP ECH01
ECH02: RET
ECH0 ENDP
CODE ENDS
END START
浙公网安备 33010602011771号