Basado en el Ordenamiento por Selección
hice un codigo para ordenar bytes
Este metodo tambien sirve para hacer un orden alfabetico ya que los caracteres ascii estan en orden alfabetico
hice un codigo para ordenar bytes

Este metodo tambien sirve para hacer un orden alfabetico ya que los caracteres ascii estan en orden alfabetico

Código (ASM) [Seleccionar]
include 'win32ax.inc'
.data
cc db '774422990',0
.code
start:
invoke lstrlen,cc
stdcall Ordenar,cc,eax
invoke MessageBox,0,cc,0,0
invoke ExitProcess,0
proc Ordenar,cNumer,cCantidad
pushad
pushf
mov edi,[cCantidad]
mov ebx,[cNumer]
dec ebx
inc edi
.bucle:
dec edi
inc ebx
stdcall Menor,ebx,edi
mov cl,byte[ebx]
mov byte[ebx],al
mov byte[edx],cl
cmp edi,1
jne .bucle
popf
popad
ret
endp
;Función que retorna el byte menor en al y su posicion en edx
proc Menor,cNumer,cCantidad
push ecx
mov eax,[cNumer]
mov edx,eax
mov ch,byte[eax]
dec eax
.bucle:
dec [cCantidad]
inc eax
.if byte[eax] < ch
mov ch,byte[eax]
mov edx,eax
.endif
cmp [cCantidad] ,0
jne .bucle
mov eax, [cNumer]
mov al,ch
pop ecx
ret
endp
.end start