Advertisement
Guest User

Untitled

a guest
Mar 15th, 2018
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ARM 1.50 KB | None | 0 0
  1. .global _start
  2. .equ j, 3
  3. .equ m, 10
  4. .equ a, 2000
  5. tab: .int 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334
  6.  
  7. _start: adr r6, tab
  8.         mov r2, #m
  9.         sub r2, r2 ,#1
  10.         stmfd sp!,{r2}
  11.         bl DEBUT
  12.         add r0, #j
  13.  
  14.         cmp r0,#60
  15.         movcs r1,r0
  16.         bcs addBISSEX
  17.         b _exit
  18.  
  19. addBISSEX:  mov r4, #a
  20.             stmfd sp!,{r4}
  21.             bl BISSEXTILE
  22.             cmp r0,#1
  23.             addeq r1, r1, #1
  24.            
  25.             mov r0,r1
  26.             b _exit
  27.  
  28.  
  29.  
  30. BISSEXTILE: stmfd sp!,{r1-r2, lr}
  31.             ldr r1, [sp,#12]
  32.             mov r2, #400
  33.             stmfd sp!,{r1,r2}
  34.             bl DIVISIBLE
  35.             add sp, sp, #8
  36.             cmp r0,#1
  37.             beq endBISEX
  38.             mov r2,#4
  39.             stmfd sp!,{r1,r2}
  40.             bl DIVISIBLE
  41.             add sp, sp, #8
  42.             cmp r0,#0
  43.             beq endBISEX
  44.             mov r2, #100
  45.             stmfd sp!,{r1,r2}
  46.             bl DIVISIBLE
  47.             add sp, sp, #8
  48.             cmp r0, #0
  49.             moveq r0,#1
  50. endBISEX:   ldmfd sp!, {r1-r2 , pc}
  51.  
  52. DEBUT:  stmfd sp!,{r1}
  53.       ldr r1, [sp,#4]
  54.       ldr r0,[r6, r1, LSL #2]
  55.       ldmfd sp!, {r1}
  56.       mov pc,lr
  57.  
  58. DIVISIBLE:  stmfd sp!, {r1-r2}
  59.             ldr r1, [sp,#8]
  60.             ldr r2, [sp,#12]
  61. tq:         cmp r1,r2
  62.             subcs r1,r1,r2
  63.             bcs tq
  64.             cmp r1,#0
  65.             moveq r0, #1
  66.             movne r0, #0
  67.             ldmfd sp!,{r1-r2}
  68.             mov pc,lr
  69.  
  70. _exit: b _exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement