        NAME    main
        PUBLIC  main
        SECTION .text : CODE (2)
        THUMB
main
        LDR R6, =vector                 ; Laddar in vektorn
        MOV R1, #4                      ; counter i+4
        MOV R8, #0                      ; counter i            
        LDR R3, [R6]                    ;R3 får första värdet
        
CLEAR   MOV R5, #0                      ;Boolean
LOOP
        LDR R2, [R6,R1]                 ;Laddar R3 med andra värdet
        CMP R2,R3                       ;Jämför
        BGT SWAP                        ;Om R2 är större än R3 -> byt inte.
                                        ;Om inte -> byt plats på R2 och R3
        MOV R3, R2
        B GO
SWAP
        STR R3, [R6,R1]                 ;Sätter R2 där R3 är
        STR R2, [R6,R8]                 ;Sätter R3 där R2 var
        MOV R5, #1
        
GO
        ADD R1, R1, #4             
        ADD R8, R8, #4
        CMP R1, #0x50
        BEQ GO2
        B LOOP

GO2
        MOV R1,#4
        MOV R8,#0
        LDR R3,[R6,R8]
        CMP R5,#1
        BEQ CLEAR
        
STOP    B STOP
 
 
        ALIGNROM 2
        DATA
vector
        DC32    14, 25, 2, 27, 3
        DC32    22, 13, 4, 24, 6
        DC32    26, 18, 8, 15, 9
        DC32    28, 10, 7, 17, 5
       

        END