; Zadatak: Napišite program koji sortira niz bojeva koji počinju ; na memorijskoj lokaciji 100(16). Sortirani niz podataka mora ; biti pohranjen na mjestu originalnog niza. Broj podataka u ; bloku je fiksno zadan i iznosi 10. ;************************** ;* Data block bubble sort * ;************************** `ORG 0 MOV R5, #1<8 ;adresa bloka podataka loop1 MOV R4, R5 ;kopiraj je u R4 MOV R6, #%D 9 ;broj podataka za sortiranje MOV R3, #0 ;zastavica zamjene loop2 LDR R0, [R4], #4 ;ucitaj podatak1 LDR R1, [R4] ;ucitaj slijedeci podatak (podatak2) CMP R0, R1 ;usporedi podatke Ble nochg ;ako ne treba zamjena, idi na nochg chg STR R1, [R4, #-4] ;spremi podatak2 na mjesto podatak1 STR R0, [R4] ;spremi podatak1 na mjesto podatak2 MOV R3, #1 ;postavi zastavicu zamjene nochg SUBs R6, R6, #1 ;smanji R6 za 1 Bne loop2 ;ako nije 0 petljaj 2. petlju TEQ R3, #1 ;provjeri zastavicu promjene Beq loop1 ;ako je bilo promjene petljaj 1. petlju HALT ;inace, kraj `ORG 100 DW 1A, -10F, 0, 45, 0FFFF27, -F2678, 45, 20, -20, 1A `END