Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* n = r0, k = r1, n >=k >=0 */
- binom:
- /* if (k == 0 || n == k) then 1 */
- cmp r1, #0
- cpmne r0, r1
- addeq r2, r2, #1
- bxeq lr
- /* left recursive call */
- sub r0, r0, #1
- push {r0,r1,lr}
- bl binom
- /* right recursive call */
- pop {r0,r1}
- sub r1, r1, #1
- bl binom
- /* cumulative result */
- pop {lr}
- bx lr
- main:
- ldr r0, =5
- ldr r1, =3
- ldr r2, =0
- push {lr}
- bl binom
- mov r0, r2
- pop {lr}
- bx lr
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement