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

📄 song.lst

📁 用汇编写的键盘钢琴程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
 00B5  C6 06 0164 R 01          SOUND_2:	MOV	TEMP,1 
 00BA  E8 0132 R                		CALL	LOAD 
 00BD  C3                       		RET	 
                                 
 00BE  C6 06 0166 R FF          LOW_3:		MOV	LOW,0FFH 
 00C3  EB 06 90                 		JMP	SOUND_3 
 00C6  C6 06 0165 R FF          HIGH_3:		MOV	HIGH,0FFH 
 00CB  C6 06 0164 R 02          SOUND_3:	MOV	TEMP,2 
 00D0  E8 0132 R                		CALL	LOAD 
 00D3  C3                       		RET 
                                 
 00D4  C6 06 0166 R FF          LOW_4:		MOV	LOW,0FFH 
 00D9  EB 06 90                 		JMP	SOUND_4 
 00DC  C6 06 0165 R FF          HIGH_4:		MOV	HIGH,0FFH 
 00E1  C6 06 0164 R 03          SOUND_4:	MOV	TEMP,3 
 00E6  E8 0132 R                		CALL	LOAD 
 00E9  C3                       		RET		 
                                 
 00EA  C6 06 0166 R FF          LOW_5:		MOV	LOW,0FFH 
 00EF  EB 06 90                 		JMP	SOUND_5 
 00F2  C6 06 0165 R FF          HIGH_5:		MOV	HIGH,0FFH 
 00F7  C6 06 0164 R 04          SOUND_5:	MOV	TEMP,4 
 00FC  E8 0132 R                		CALL	LOAD 
 00FF  C3                       		RET 
                                 
Microsoft (R) Macro Assembler  Version 4.00                 8/27/6                                                            Page     1-5
                                                            

 0100  C6 06 0166 R FF          LOW_6:		MOV	LOW,0FFH 
 0105  EB 06 90                 		JMP	SOUND_6 
 0108  C6 06 0165 R FF          HIGH_6:		MOV	HIGH,0FFH 
 010D  C6 06 0164 R 05          SOUND_6:	MOV	TEMP,5 
 0112  E8 0132 R                		CALL	LOAD 
 0115  C3                       		RET 
                                 
 0116  C6 06 0166 R FF          LOW_7:		MOV	LOW,0FFH 
 011B  EB 06 90                 		JMP	SOUND_7 
 011E  C6 06 0165 R FF          HIGH_7:		MOV	HIGH,0FFH 
 0123  C6 06 0164 R 06          SOUND_7:	MOV	TEMP,6 
 0128  E8 0132 R                		CALL	LOAD 
 012B  C3                       		RET		 
                                 
 012C  C6 06 0163 R FF          MAINTASK_8:	MOV	SIGN_QUIT,0FFH 
 0131  C3                       MAINTASK_9:	RET 
                                 
                                MAINTASK	ENDP 
                                 
 0132                           LOAD	PROC	NEAR 
 0132  50                       	PUSH	AX  
 0133  52                       	PUSH	DX  
 0134  56                       	PUSH	SI			;目的函数不改变寄存器值  
 0135  8A 16 0164 R             	MOV	DL,TEMP  
 0139  02 D2                    	ADD	DL,DL  
 013B  81 E2 000F               	AND	DX,000FH		;防止出错,万一DX越界无关  
 013F  BE 0167 R                	MOV	SI,OFFSET KEYBOARD  
 0142  03 F2                    	ADD	SI,DX  
 0144  8A 04                    	MOV	AL,[SI]  
 0146  8A 64 01                 	MOV	AH,[SI+1] 
 0149  50                       	PUSH	AX 
                                 
 014A  A0 0165 R                	MOV	AL,HIGH 
 014D  3C 00                    	CMP	AL,00H 
 014F  74 09                    	JZ	NEXT_1 
 0151  58                       	POP	AX 
 0152  D1 E8                    	SHR	AX,1 
 0154  50                       	PUSH	AX 
 0155  C6 06 0165 R 00          	MOV	HIGH,00H 
                                 
 015A  A0 0166 R                NEXT_1:	MOV	AL,LOW 
 015D  3C 00                    	CMP	AL,00H 
 015F  74 09                    	JZ	NEXT_2 
 0161  58                       	POP	AX 
 0162  D1 E0                    	SHL	AX,1 
 0164  50                       	PUSH	AX 
 0165  C6 06 0166 R 00          	MOV	LOW,00H 
                                 
 016A  58                       NEXT_2:	POP	AX 
 016B  BA 0042                  	MOV	DX,42H  
 016E  EE                       	OUT	DX,AL  
                                 
 016F  8A C4                    	MOV	AL,AH 
 0171  EE                       	OUT	DX,AL  
Microsoft (R) Macro Assembler  Version 4.00                 8/27/6                                                            Page     1-6
                                                            

 0172  5E                       	POP	SI  
 0173  5A                       	POP	DX  
 0174  58                       	POP	AX  
 0175  C3                       	RET  
                                LOAD	ENDP 
                                 
                                 
 0176                           INITPROG	PROC	NEAR 
 0176  B8 ---- R                		MOV	AX,SEG MENUSTR 
 0179  8E D8                    		MOV	DS,AX 
                                 
 017B  BA 0000 R                		MOV	DX,OFFSET MENUSTR 
                                 
 017E  B4 09                    		MOV	AH,09H 
 0180  CD 21                    		INT	21H 
                                 
 0182  C3                       		RET 
                                INITPROG	ENDP 
                                 
 0183                           RESTOREPROG	PROC	NEAR 
 0183  B8 ---- R                		MOV	AX,SEG QUITSTR 
 0186  8E D8                    		MOV	DS,AX 
 0188  BA 0141 R                		MOV	DX,OFFSET QUITSTR 
                                 
 018B  B4 09                    		MOV	AH,09H 
 018D  CD 21                    		INT	21H 
                                 
 018F  E4 61                    		IN	AL,61H 
 0191  24 FC                    		AND	AL,0FCH 
 0193  E6 61                    		OUT	61H,AL 
                                		 
 0195  C6 06 0163 R 00          		MOV	SIGN_QUIT,00H 
                                 
 019A  C3                       		RET 
                                RESTOREPROG	ENDP 
                                 
 019B                           MYCODE		ENDS 
                                 
                                		END	MAIN 
Microsoft (R) Macro Assembler  Version 4.00                 8/27/6                                                            Symbols-1
                                                             

Segments and Groups:

                N a m e         	Size	Align	Combine Class

MYCODE . . . . . . . . . . . . .  	019B	PARA	NONE	
MYDATA . . . . . . . . . . . . .  	0175	PARA	NONE	
MYSTACK  . . . . . . . . . . . .  	0400	PARA	STACK	

Symbols:            

                N a m e         	Type	Value	Attr         

HIGH . . . . . . . . . . . . . .  	L BYTE 	0165	MYDATA
HIGH_1 . . . . . . . . . . . . .  	L NEAR	009A	MYCODE
HIGH_2 . . . . . . . . . . . . .  	L NEAR	00B0	MYCODE
HIGH_3 . . . . . . . . . . . . .  	L NEAR	00C6	MYCODE
HIGH_4 . . . . . . . . . . . . .  	L NEAR	00DC	MYCODE
HIGH_5 . . . . . . . . . . . . .  	L NEAR	00F2	MYCODE
HIGH_6 . . . . . . . . . . . . .  	L NEAR	0108	MYCODE
HIGH_7 . . . . . . . . . . . . .  	L NEAR	011E	MYCODE

INITPROG . . . . . . . . . . . .  	N PROC	0176	MYCODE	Length = 000D

KEYBOARD . . . . . . . . . . . .  	L WORD 	0167	MYDATA

LOAD . . . . . . . . . . . . . .  	N PROC	0132	MYCODE	Length = 0044
LOW  . . . . . . . . . . . . . .  	L BYTE 	0166	MYDATA
LOW_1  . . . . . . . . . . . . .  	L NEAR	0092	MYCODE
LOW_2  . . . . . . . . . . . . .  	L NEAR	00A8	MYCODE
LOW_3  . . . . . . . . . . . . .  	L NEAR	00BE	MYCODE
LOW_4  . . . . . . . . . . . . .  	L NEAR	00D4	MYCODE
LOW_5  . . . . . . . . . . . . .  	L NEAR	00EA	MYCODE
LOW_6  . . . . . . . . . . . . .  	L NEAR	0100	MYCODE
LOW_7  . . . . . . . . . . . . .  	L NEAR	0116	MYCODE

MAIN . . . . . . . . . . . . . .  	F PROC	0000	MYCODE	Length = 002B
MAINLOOP . . . . . . . . . . . .  	L NEAR	0017	MYCODE
MAINTASK . . . . . . . . . . . .  	N PROC	0034	MYCODE	Length = 00FE
MAINTASK_8 . . . . . . . . . . .  	L NEAR	012C	MYCODE
MAINTASK_9 . . . . . . . . . . .  	L NEAR	0131	MYCODE
MENUSTR  . . . . . . . . . . . .  	L BYTE 	0000	MYDATA

NEXT_1 . . . . . . . . . . . . .  	L NEAR	015A	MYCODE
NEXT_2 . . . . . . . . . . . . .  	L NEAR	016A	MYCODE

QUITSTR  . . . . . . . . . . . .  	L BYTE 	0141	MYDATA

RESTOREPROG  . . . . . . . . . .  	N PROC	0183	MYCODE	Length = 0018

SD_5 . . . . . . . . . . . . . .  	L NEAR	002B	MYCODE
SD_6 . . . . . . . . . . . . . .  	L NEAR	002E	MYCODE
SD_7 . . . . . . . . . . . . . .  	L NEAR	0031	MYCODE
SIGN_QUIT  . . . . . . . . . . .  	L BYTE 	0163	MYDATA
SOUND_1  . . . . . . . . . . . .  	L NEAR	009F	MYCODE
Microsoft (R) Macro Assembler  Version 4.00                 8/27/6                                                            Symbols-2
                                                             

SOUND_2  . . . . . . . . . . . .  	L NEAR	00B5	MYCODE
SOUND_3  . . . . . . . . . . . .  	L NEAR	00CB	MYCODE
SOUND_4  . . . . . . . . . . . .  	L NEAR	00E1	MYCODE
SOUND_5  . . . . . . . . . . . .  	L NEAR	00F7	MYCODE
SOUND_6  . . . . . . . . . . . .  	L NEAR	010D	MYCODE
SOUND_7  . . . . . . . . . . . .  	L NEAR	0123	MYCODE

TEMP . . . . . . . . . . . . . .  	L BYTE 	0164	MYDATA


    243 Source  Lines
    243 Total   Lines
     65 Symbols

  48292 Bytes symbol space free

      0 Warning Errors
      7 Severe  Errors

⌨️ 快捷键说明

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