Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- AREA WriteData, DATA, READWRITE, align=4
- Calories_tot SPACE 28
- Calories_food_ordered SPACE 28
- Calories_sport_ordered SPACE 28
- Calories_food_orderedWITHID SPACE 56
- Calories_sport_orderedWITHID SPACE 56
- AREA |.text|, CODE, READONLY, align=3
- ; Reset Handler
- Reset_Handler PROC
- EXPORT Reset_Handler [WEAK]
- LDR R0, =Reset_Handler
- ; your code here
- i RN 1
- j RN 2
- tmp_cal RN 3
- tmp_day RN 4
- day RN 5
- count_swap RN 6
- cal_addr RN 7
- cal_ord RN 8
- tmp_cal1 RN 9
- tmp_day1 RN 10
- LDRB day, Num_days
- MOV i, #0
- LDR cal_addr, =Calories_food
- LDR cal_ord, =Calories_food_orderedWITHID
- cpy_food
- LDRD tmp_day, tmp_cal, [cal_addr]
- STRD tmp_day, tmp_cal, [cal_ord]
- ADD cal_addr, cal_addr, #8
- ADD cal_ord, cal_ord, #8
- ADD i, i, #1
- CMP i, day
- BNE cpy_food
- MOV i, #0
- LDRB day, Num_days_sport
- LDR cal_addr, =Calories_sport
- LDR cal_ord, =Calories_sport_orderedWITHID
- cpy_sport
- LDRD tmp_day, tmp_cal, [cal_addr]
- STRD tmp_day, tmp_cal, [cal_ord]
- ADD cal_addr, cal_addr, #8
- ADD cal_ord, cal_ord, #8
- ADD i, i, #1
- CMP i, day
- BNE cpy_sport
- LDR cal_ord, =Calories_food_orderedWITHID
- LDRB day, Num_days
- bsort_next
- MOV i,#0
- MOV count_swap,#0
- bsort_loop
- ADD j,i,#1
- CMP j,day
- BGE bsort_check
- LDRD tmp_day, tmp_cal, [cal_ord,i,LSL #3]
- LDRD tmp_day1,tmp_cal1,[cal_ord,j,LSL #3]
- CMP tmp_cal,tmp_cal1
- STRDLT tmp_day,tmp_cal,[cal_ord,j,LSL #3]
- STRDLT tmp_day1,tmp_cal1,[cal_ord,i,LSL #3]
- ADDLT count_swap,count_swap,#1
- MOV i,j
- B bsort_loop
- bsort_check
- CMP count_swap,#0
- SUBGT day,day,#1
- BGT bsort_next
- BX R0
- ENDP
- Days DCB 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
- Calories_food DCD 0x06, 1300, 0x03, 1700, 0x02, 1200, 0x04, 1900
- DCD 0x05, 1110, 0x01, 1670, 0x07, 1000
- Calories_sport DCD 0x02, 500, 0x05, 800, 0x06, 400
- Num_days DCB 7
- Num_days_sport DCB 3
- ; Dummy Exception Handlers (infinite loops which can be modified)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement