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

📄 04.lst

📁 汇编语言的一些简单代码
💻 LST
字号:
Microsoft (R) Macro Assembler Version 6.11		    11/23/07 11:14:10
F:\课程\aaa\souce\04.asm				     Page 1 - 1


 0000				data segment 
 0000  0032 [			num dw 50 dup(?)
        0000
       ]
 0064 0000			i dw 0
 0066 70 6C 65 61 73 65		char db 'please input the data',10,13,'$'  
       20 69 6E 70 75 74
       20 74 68 65 20 64
       61 74 61 0A 0D 24
 007E 0D 54 68 65 20 6F		char3 db 0dh,'The order of the numbers is:',0ah,0dh,'$' 
       72 64 65 72 20 6F
       66 20 74 68 65 20
       6E 75 6D 62 65 72
       73 20 69 73 3A 0A
       0D 24
 009E  0005 [			rec db 5 dup(?) 
        00
       ]
 00A3				data ends 
 0000				code segment  
				assume cs:code,ds:data 
 0000				start:  
 0000  B8 ---- R		mov ax,data 
 0003  8E D8			mov ds,ax 
 0005  BA 0066 R		mov dx,offset char
 0008  B4 09			mov ah,09h
 000A  CD 21			int 21h
 000C  BE 0000			mov si,0 
 000F  BB 0000			mov bx,0 
 0012				input: 
 0012  B4 01			mov ah,01h 
 0014  CD 21			int 21h 
 0016  3C 2C			cmp al,','
 0018  74 17			jz write1 
 001A  3C 0D			cmp al,0dh
 001C  74 23			jz write2 
 001E  2C 30			sub al,30h 
 0020  8A C8			mov cl,al 
 0022  B5 00			mov ch,00h 
 0024  8B C3			mov ax,bx 
 0026  BB 000A			mov bx,0ah 
 0029  F7 E3			mul bx 
 002B  8B D8			mov bx,ax 
 002D  03 D9			add bx,cx 
 002F  EB E1			jmp input 
 0031				write1:
 0031  89 9C 0000 R		mov [num+si],bx
 0035  83 C6 02			add si,2 
 0038  FF 06 0064 R		inc i 
 003C  BB 0000			mov bx,0 
 003F  EB D1			jmp input 

 0041				write2:
 0041  89 9C 0000 R		mov [num+si],bx
 0045  83 C6 02			add si,2 
 0048  FF 06 0064 R		inc i 
 004C  B2 0A			mov dl,0ah 
 004E  B4 02			mov ah,02h 
 0050  CD 21			int 21h 

 0052				beforeorder: 
 0052  8B 0E 0064 R		mov cx,i 
 0056  49			dec cx 
 0057				loop1: 
 0057  8B F9			mov di,cx 
 0059  BB 0000			mov bx,0 
 005C				loop2: 
 005C  8B 87 0000 R		mov ax,num[bx] 
 0060  3B 87 0002 R		cmp ax,num[bx+2] 
 0064  76 08			jbe continue 
 0066  87 87 0002 R		xchg ax,num[bx+2] 
 006A  89 87 0000 R		mov num[bx],ax 
 006E				continue: 
 006E  83 C3 02			add bx,2 
 0071  E2 E9			loop loop2 
 0073  8B CF			mov cx,di 
 0075  E2 E0			loop loop1 





 0077				initnum:  
 0077  8D 16 007E R		lea dx,char3 
 007B  B4 09			mov ah,09h 
 007D  CD 21			int 21h 
 007F  8B 0E 0064 R		mov cx,i 
 0083  BF 0000			mov di,0 
 0086				loopnum: 
 0086  8B 85 0000 R		mov ax,[num+di] 
 008A  83 C7 02			add di,2 
 008D  BB 000A			mov bx,10 
 0090  BE 0004			mov si,4 
 0093				changenum:  
 0093  BA 0000			mov dx,0 
 0096  F7 F3			div bx 
 0098  88 94 009E R		mov [rec+si],dl 
 009C  4E			dec si 
 009D  83 F8 00			cmp ax,0 
 00A0  77 F1			ja changenum 
 00A2				outputnum:  
 00A2  46			inc si 
 00A3  8A 94 009E R		mov dl,[rec+si] 
 00A7  80 C2 30			add dl,30h
 00AA  B4 02			mov ah,02h 
 00AC  CD 21			int 21h 
 00AE  83 FE 04			cmp si,4 
 00B1  72 EF			jb outputnum 

 00B3  B2 20			mov dl,20h 
 00B5  B4 02			mov ah,02h 
 00B7  CD 21			int 21h 
 00B9  E2 CB			loop loopnum 
 00BB				stop: 
 00BB  B4 4C			mov ah,4ch 
 00BD  CD 21			int 21h 
 00BF				code ends 
				end start 
Microsoft (R) Macro Assembler Version 6.11		    11/23/07 11:14:10
F:\课程\aaa\souce\04.asm				     Symbols 2 - 1




Segments and Groups:

                N a m e                 Size     Length   Align   Combine Class

code . . . . . . . . . . . . . .	16 Bit	 00BF	  Para	  Private 
data . . . . . . . . . . . . . .	16 Bit	 00A3	  Para	  Private 


Symbols:

                N a m e                 Type     Value    Attr

beforeorder  . . . . . . . . . .	L Near	 0052	  code	
changenum  . . . . . . . . . . .	L Near	 0093	  code	
char3  . . . . . . . . . . . . .	Byte	 007E	  data	
char . . . . . . . . . . . . . .	Byte	 0066	  data	
continue . . . . . . . . . . . .	L Near	 006E	  code	
initnum  . . . . . . . . . . . .	L Near	 0077	  code	
input  . . . . . . . . . . . . .	L Near	 0012	  code	
i  . . . . . . . . . . . . . . .	Word	 0064	  data	
loop1  . . . . . . . . . . . . .	L Near	 0057	  code	
loop2  . . . . . . . . . . . . .	L Near	 005C	  code	
loopnum  . . . . . . . . . . . .	L Near	 0086	  code	
num  . . . . . . . . . . . . . .	Word	 0000	  data	
outputnum  . . . . . . . . . . .	L Near	 00A2	  code	
rec  . . . . . . . . . . . . . .	Byte	 009E	  data	
start  . . . . . . . . . . . . .	L Near	 0000	  code	
stop . . . . . . . . . . . . . .	L Near	 00BB	  code	
write1 . . . . . . . . . . . . .	L Near	 0031	  code	
write2 . . . . . . . . . . . . .	L Near	 0041	  code	

	   0 Warnings
	   0 Errors

⌨️ 快捷键说明

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