⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 系统时间.lst

📁 用汇编编写的
💻 LST
字号:
Turbo Assembler	 Version 4.1	    08/05/21 13:11:51	    Page 1
C:\DOCUME~1\ADMINI~1\MYDOCU~1\汇编程序\系统时间.ASM



      1	0000				   STACK1  SEGMENT   STACK
      2	0000  C8*(????)				   DW	     200 DUP (?)
      3	0190				   STACK1  ENDS
      4	0000				     DATA  SEGMENT
      5	0000  03E8*(20)			    SPACE  DB	     1000 DUP (' ')
      6	03E8  06*(20) C9 1A*(CD)  +	  PATTERN  DB	     6 DUP (' '),0C9H,26 DUP (0CDH),0BBH,6 DUP (' ')
      7	      BB 06*(20)
      8	0410  06*(20) BA 1A*(20)  +		   DB	     6 DUP (' '),0BAH,26 DUP (20H),0BAH,6 DUP (' ')
      9	      BA 06*(20)
     10	0438  06*(20) C8 1A*(CD)  +		   DB	     6 DUP (' '),0C8H,26 DUP (0CDH),0BCH,6 DUP (' ')
     11	      BC 06*(20)
     12	0460  08*(3A) 0C*(20)		  DBUFFER  DB	     8 DUP (':'),12 DUP	(' ')
     13	0474  14*(20)			 DBUFFER1  DB	     20	DUP (' ')
     14	0488  0D 0A 50 4C 45 41	53+	     STR1  DB	     0DH,0AH, 'PLEASE INPUT DATE(1) OR TIME(2) OR QUIT(3): $'
     15	      45 20 49 4E 50 55	54+
     16	      20 44 41 54 45 28	31+
     17	      29 20 4F 52 20 54	49+
     18	      4D 45 28 32 29 20	4F+
     19	      52 20 51 55 49 54	28+
     20	      33 29 3A 20 24
     21	04B7				     DATA  ENDS
     22	0000				     CODE  SEGMENT
     23						   ASSUME    CS:CODE,DS:DATA,ES:DATA,SS:STACK1
     24	0000  B8 0001			   START:  MOV	     AX,0001H
     25	0003  CD 10				   INT	     10H
     26	0005  B8 0000s				   MOV	     AX,DATA
     27	0008  8E D8				   MOV	     DS,AX
     28	000A  8E C0				   MOV	     ES,AX
     29	000C  BD 0000r				   MOV	     BP,OFFSET SPACE
     30	000F  BA 0B00				   MOV	     DX,0B00H
     31	0012  B9 03E8				   MOV	     CX,1000
     32	0015  BB 0040				   MOV	     BX,0040H
     33						   ;MOV	      AX,1300H
     34						   ;INT	      10H
     35	0018  BD 03E8r				   MOV	     BP,OFFSET PATTERN
     36	001B  BA 0B00				   MOV	     DX,0B00H
     37	001E  B9 0078				   MOV	     CX,120
     38	0021  BB 004E				   MOV	     BX,004EH
     39						   ;MOV	      AX,1301H
     40						   ;INT	      10H
     41	0024  BA 0488r				   LEA	     DX,STR1
     42	0027  B4 09				   MOV	     AH,9
     43	0029  CD 21				   INT	     21H
     44	002B  B4 01				   MOV	     AH,1
     45	002D  CD 21				   INT	     21H
     46	002F  3C 31				   CMP	     AL,31H
     47	0031  75 03				   JNE	     A
     48	0033  E8 000F				   CALL	     DATE
     49	0036  3C 32			       A:  CMP	     AL,32H
     50	0038  75 03				   JNE	     B
     51	003A  E8 0060				   CALL	     TIME
     52	003D  3C 33			       B:  CMP	     AL,33H
     53	003F  75 BF				   JNE	     START
     54	0041  B4 4C				   MOV	     AH,4CH
     55	0043  CD 21				   INT	     21H
     56
     57	0045				     DATE  PROC	     NEAR
Turbo Assembler	 Version 4.1	    08/05/21 13:11:51	    Page 2
C:\DOCUME~1\ADMINI~1\MYDOCU~1\汇编程序\系统时间.ASM



     58	0045  B4 2A			DISPLAY2:  MOV	     AH,2AH
     59	0047  CD 21				   INT	     21H
     60	0049  BE 0000				   MOV	     SI,0
     61	004C  8B C1				   MOV	     AX,CX
     62	004E  BB 0064				   MOV	     BX,100
     63	0051  F6 F3				   DIV	     BL
     64	0053  8A DC				   MOV	     BL,AH
     65	0055  E8 00AD				   CALL	     BCDASC1
     66	0058  8A C3				   MOV	     AL,BL
     67	005A  E8 00A8				   CALL	     BCDASC1
     68	005D  46				   INC	     SI
     69	005E  8A C6				   MOV	     AL,DH
     70	0060  E8 00A2				   CALL	     BCDASC1
     71	0063  46				   INC	     SI
     72	0064  8A C2				   MOV	     AL,DL
     73	0066  E8 009C				   CALL	     BCDASC1
     74	0069  BD 0474r				   MOV	     BP,OFFSET DBUFFER1
     75	006C  BA 0C0D				   MOV	     DX,0C0DH
     76	006F  B9 0014				   MOV	     CX,20
     77	0072  BB 004E				   MOV	     BX,004EH
     78	0075  B8 1301				   MOV	     AX,1301H
     79	0078  CD 10				   INT	     10H
     80	007A  B4 02				   MOV	     AH,02H
     81	007C  BA 0300				   MOV	     DX,0300H
     82	007F  B7 00				   MOV	     BH,0
     83	0081  CD 10				   INT	     10H
     84	0083  BB 0018				   MOV	     BX,0018H
     85	0086  B9 FFFF			   REPEA:  MOV	     CX,0FFFFH
     86	0089  E2 FE			  REPEAT:  LOOP	     REPEAT
     87	008B  4B				   DEC	     BX
     88	008C  75 F8				   JNZ	     REPEA
     89	008E  B4 01				   MOV	     AH,01H
     90	0090  CD 16				   INT	     16H
     91	0092  74 B1				   JE	     DISPLAY2
     92	0094  E9 FF69				   JMP	     START
     93	0097  B8 4C00				   MOV	     AX,4C00H
     94	009A  CD 21				   INT	     21H
     95	009C  C3				   RET
     96	009D				     DATE  ENDP
     97
     98	009D				     TIME  PROC	     NEAR	 ;显示时间子程序
     99	009D  BE 0000			DISPLAY1:  MOV	     SI,0
    100	00A0  BB 0064				   MOV	     BX,100
    101	00A3  F6 F3				   DIV	     BL
    102	00A5  B4 2C				   MOV	     AH,2CH	 ;取时间
    103	00A7  CD 21				   INT	     21H
    104	00A9  8A C5				   MOV	     AL,CH
    105	00AB  E8 0040				   CALL	     BCDASC	 ;将时间数值转换成ASCII码字符
    106	00AE  46				   INC	     SI
    107	00AF  8A C1				   MOV	     AL,CL
    108	00B1  E8 003A				   CALL	     BCDASC
    109	00B4  46				   INC	     SI
    110	00B5  8A C6				   MOV	     AL,DH
    111	00B7  E8 0034				   CALL	     BCDASC
    112	00BA  BD 0460r				   MOV	     BP,OFFSET DBUFFER
    113	00BD  BA 0C0D				   MOV	     DX,0C0DH
    114	00C0  B9 0014				   MOV	     CX,20
Turbo Assembler	 Version 4.1	    08/05/21 13:11:51	    Page 3
C:\DOCUME~1\ADMINI~1\MYDOCU~1\汇编程序\系统时间.ASM



    115	00C3  BB 004E				   MOV	     BX,004EH
    116	00C6  B8 1301				   MOV	     AX,1301H
    117	00C9  CD 10				   INT	     10H
    118	00CB  B4 02				   MOV	     AH,02H
    119	00CD  BA 0300				   MOV	     DX,0300H
    120	00D0  B7 00				   MOV	     BH,0
    121	00D2  CD 10				   INT	     10H
    122	00D4  BB 0018				   MOV	     BX,0018H
    123	00D7  B9 FFFF			      RE:  MOV	     CX,0FFFFH
    124	00DA  E2 FE			     REA:  LOOP	     REA
    125	00DC  4B				   DEC	     BX
    126	00DD  75 F8				   JNZ	     RE
    127	00DF  B4 01				   MOV	     AH,01H
    128	00E1  CD 16				   INT	     16H
    129	00E3  74 B8				   JE	     DISPLAY1
    130	00E5  E9 FF18				   JMP	     START
    131	00E8  B8 4C00				   MOV	     AX,4C00H
    132	00EB  CD 21				   INT	     21H
    133	00ED  C3				   RET
    134	00EE				     TIME  ENDP
    135
    136	00EE				   BCDASC  PROC	     NEAR	 ;时间数值转换成ASCII码字符子程序
    137	00EE  53				   PUSH	     BX
    138	00EF  98				   CBW
    139	00F0  B3 0A				   MOV	     BL,10
    140	00F2  F6 F3				   DIV	     BL
    141	00F4  04 30				   ADD	     AL,'0'
    142	00F6  88 84 0460r			   MOV	     DBUFFER[SI],AL
    143	00FA  46				   INC	     SI
    144	00FB  80 C4 30				   ADD	     AH,'0'
    145	00FE  88 A4 0460r			   MOV	     DBUFFER[SI],AH
    146	0102  46				   INC	     SI
    147	0103  5B				   POP	     BX
    148	0104  C3				   RET
    149	0105				   BCDASC  ENDP
    150
    151	0105				  BCDASC1  PROC	     NEAR	 ;日期数值转换成ASCII码字符子程序
    152	0105  53				   PUSH	     BX
    153	0106  98				   CBW
    154	0107  B3 0A				   MOV	     BL,10
    155	0109  F6 F3				   DIV	     BL
    156	010B  04 30				   ADD	     AL,'0'
    157	010D  88 84 0474r			   MOV	     DBUFFER1[SI],AL
    158	0111  46				   INC	     SI
    159	0112  80 C4 30				   ADD	     AH,'0'
    160	0115  88 A4 0474r			   MOV	     DBUFFER1[SI],AH
    161	0119  46				   INC	     SI
    162	011A  5B				   POP	     BX
    163	011B  C3				   RET
    164	011C				  BCDASC1  ENDP
    165	011C				     CODE  ENDS
    166						   END	     START
Turbo Assembler	 Version 4.1	    08/05/21 13:11:51	    Page 4
Symbol Table




Symbol Name		Type   Value			   Cref	(defined at #)

??DATE			Text   "08/05/21"
??FILENAME		Text   "系统时间"
??TIME			Text   "13:11:51"
??VERSION		Number 040A
@CPU			Text   0101H
@CURSEG			Text   CODE			   #1  #4  #22
@FILENAME		Text   系统时间
@WORDSIZE		Text   2			   #1  #4  #22
A			Near   CODE:0036		   47  #49
B			Near   CODE:003D		   50  #52
BCDASC			Near   CODE:00EE		   105	108  111  #136
BCDASC1			Near   CODE:0105		   65  67  70  73  #151
DATE			Near   CODE:0045		   48  #57
DBUFFER			Byte   DATA:0460		   #12	112  142  145
DBUFFER1		Byte   DATA:0474		   #13	74  157	 160
DISPLAY1		Near   CODE:009D		   #99	129
DISPLAY2		Near   CODE:0045		   #58	91
PATTERN			Byte   DATA:03E8		   #6  35
RE			Near   CODE:00D7		   #123	 126
REA			Near   CODE:00DA		   #124	 124
REPEA			Near   CODE:0086		   #85	88
REPEAT			Near   CODE:0089		   #86	86
SPACE			Byte   DATA:0000		   #5  29
START			Near   CODE:0000		   #24	53  92	130  166
STR1			Byte   DATA:0488		   #14	41
TIME			Near   CODE:009D		   51  #98

Groups & Segments	Bit Size Align	Combine	Class	   Cref	(defined at #)

CODE			16  011C Para	none		   #22	23
DATA			16  04B7 Para	none		   #4  23  23  26
STACK1			16  0190 Para	Stack		   #1  23


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -