.text mov R3, #1 ;starting at two doover: add R3, R3, #1 ; r3++ mul R4, R3, R3 cmp R4, R1 ; is r4 >= r2? beq itsperfect bgt itsnot blt doover itsperfect: mov R2, R3 swi #h00900001 itsnot: mov R2, #0 sub R2, R2, #1 swi #h00900001