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

📄 04.asm

📁 汇编语言的一些简单代码
💻 ASM
字号:
data segment 
num dw 50 dup(?)
i dw 0
char db 'please input the data',10,13,'$'  
char3 db 0dh,'The order of the numbers is:',0ah,0dh,'$' 
rec db 5 dup(?) 
data ends 
code segment  
assume cs:code,ds:data 
start:  
mov ax,data 
mov ds,ax 
mov dx,offset char
mov ah,09h
int 21h
mov si,0 
mov bx,0 
input: 
mov ah,01h 
int 21h 
cmp al,','
jz write1 
cmp al,0dh
jz write2 
sub al,30h 
mov cl,al 
mov ch,00h 
mov ax,bx 
mov bx,0ah 
mul bx 
mov bx,ax 
add bx,cx 
jmp input 
write1:
mov [num+si],bx
add si,2 
inc i 
mov bx,0 
jmp input 

write2:
mov [num+si],bx
add si,2 
inc i 
mov dl,0ah 
mov ah,02h 
int 21h 

beforeorder: 
mov cx,i 
dec cx 
loop1: 
mov di,cx 
mov bx,0 
loop2: 
mov ax,num[bx] 
cmp ax,num[bx+2] 
jbe continue 
xchg ax,num[bx+2] 
mov num[bx],ax 
continue: 
add bx,2 
loop loop2 
mov cx,di 
loop loop1 





initnum:  
lea dx,char3 
mov ah,09h 
int 21h 
mov cx,i 
mov di,0 
loopnum: 
mov ax,[num+di] 
add di,2 
mov bx,10 
mov si,4 
changenum:  
mov dx,0 
div bx 
mov [rec+si],dl 
dec si 
cmp ax,0 
ja changenum 
outputnum:  
inc si 
mov dl,[rec+si] 
add dl,30h
mov ah,02h 
int 21h 
cmp si,4 
jb outputnum 

mov dl,20h 
mov ah,02h 
int 21h 
loop loopnum 
stop: 
mov ah,4ch 
int 21h 
code ends 
end start 

⌨️ 快捷键说明

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