org 100h
call outme
mov bx,str1
mov si,-1
@outer:
inc si
cmp si,len
jz @ready
mov di,si
@inner:
inc di
cmp di,len
je @outer
mov al,[bx+si]
cmp al,[bx+di]
jb @no
mov ah,[bx+di]
mov [bx+di],al
mov [bx+si],ah
@no:
jmp @inner
@ready:
call outme
xor ax,ax
int 16h
int 20h
outme:pusha
mov si,str1
mov di,buffer
mov cx,10
xor ax,ax
@nowai:
cmp si,str1+len
je @ohshi
mov al,[si]
xor dx,dx
cmp al,100
jb @ne100
inc di
@ne100:
cmp al,10
jb @ne10
inc di
@ne10:
push di
aa:
div cx
add dl,30h
mov [di],dl
xor dx,dx
dec di
test ax,ax
jnz aa
pop di
mov word[di+1],', '
add di,3
inc si
jmp @nowai
@ohshi:
mov word[di-2],0A0Dh
mov word[di],'$'
mov ah,9
mov dx,buffer
int 21h
popa
ret
str1 db 222,12,23,55,4,2,33,125,18,46
len = $-str1
buffer:
алсо, оп хуй