admin管理员组文章数量:1357702
numbers DCD 60, 50, 40, 30, 20, 10 ; array
LDR R0, =numbers ;load numbers
MOV R1, #0; i
MOV R2, #5 ; nums.lenght - 1
OUTER_LOOP ; for loop
CMP R1, R2
BGE DONE ; if i >= nums.length -1
LDR R3, [R0, R1, LSL #2] ; fetch i
ADD R4, R1, #1 ; i+ 1
LDR R5, [R0, R4 ,LSL #2]
CMP R3, R5 ; if nums[i] > num[i+1]
BLE SKIP_SWAP
STR R5, [R0, R1, LSL #2] ; swap num 1 = nums i +1
STR R3, [R0, R4, LSL #2] ; vice versa
SKIP_SWAP
ADD R1, R1, #1 ; i++
BAL OUTER_LOOP ; go back to loop
DONE
im trying to do bubble sort on a reverse array and it does push the 60 to the correct spot but stops right after, what do I do to change it so it keep going after 60?
本文标签: sortingBubble sort in Assembly (ARM)Stack Overflow
版权声明:本文标题:sorting - Bubble sort in Assembly (ARM) - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1744069192a2585575.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论