www.pudn.com > 日期、菜单、字符串的C函数.rar > DOSTIME.ASM
; *** dostime.asm *** ; ; IBM-PC microsoft "C" under PC-DOS ; ; Microsoft "C" callable 8088 assembly routine that uses a DOS function ; call to obtain and return the hours, minutes, seconds, and hundreths ; of a second as integers. ; ; synopsis dostime(&hour,&min,&sec,&ths); ; ; *** no function value returned *** ; int hour; 0-23 military time ; int min; 0-59 ; int sec; 0-59 ; int ths; 0-99 ; ; ; Written by L. Cuthbertson, May 1984 ; ;********************************************************************** ; PGROUP GROUP PROG PROG SEGMENT BYTE PUBLIC 'PROG' PUBLIC DOSTIME ASSUME CS:PGROUP ; ; ******************************************************************** ; DOSTIME PROC NEAR PUSH BP MOV BP,SP MOV AH,2CH ; DOS GET TIME FUNCTION NUMBER INT 21H ; DOS FUNCTION CALL INTERRUPT MOV AL,CH ; MOVE HOURS INTO AX XOR AH,AH ; CLEAR HIGH BYTE MOV DI,[BP+4] ; ADDRESS OF HOURS VARIABLE MOV [DI],AX ; MOVE HOURS INTO HOURS VARIABLE MOV BL,CL ; MOVE MINUTES INTO BX XOR BH,BH ; CLEAR HIGH BYTE MOV DI,[BP+6] ; ADDRESS OF MINUTES VARIABLE MOV [DI],BX ; MOVE MINUTES INTO MINUTES VARIABLE MOV CL,DH ; MOVE SECONDS INTO CX XOR CH,CH ; CLEAR HIGH BYTE MOV DI,[BP+8] ; ADDRESS OF SECONDS VARIABLE MOV [DI],CX ; MOVE SECONDS INTO SECONDS VARIABLE XOR DH,DH ; CLEAR HIGH BYTE MOV DI,[BP+10] ; ADDRESS OF THS VARIABLE MOV [DI],DX ; MOVE 1/100THS INTO THS VARIABLE POP BP RET DOSTIME ENDP ; PROG ENDS END