I am a university student learning how to write assembly code for the ARM platform (ARM v1.2).
First, I wrote this program in C:
#include <stdio.h>
#include <math.h>
int main()
{
    int M, N;
    int count = 0;
    scanf("%d %d", &M, &N);
    for(int k = M; k<N+1; k++){
        int T = sqrt(k);
        for(int i = 2; i<T+1; i++){
            if(k % i == 0){
                break;
            }
            if(i == T){
                count++;
                break;
            }
        }
    }
    printf("%d", count);
    return 0;
}
Now I want to convert it into ARM assembly language (ARM v1.2).
I already wrote the scanf and printf part as follows:
            AREA text, CODE
    
        
EXPORT print
            EXPORT scan
            EXPORT print_char
print
            ;Entry: Takes char in r0
            ;Conforms to APCS
            ;Call SYS_WRITEC, with r1 containing a POINTER TO a character
        
            ;SYS_WRITEC = 3, SYS_WRITE0 = 4, SYS_READC = 7
        
            stmfd   sp!, {r4-r12, lr}
            mov     r1, r0
            mov     r0, #4
            swi     0x123456
            ldmfd   sp!, {r4-r12, pc}
scan
            stmfd   sp!, {lr}
            mov     r0, #7
            swi     0x123456
            ldmfd   sp!, {pc}
print_char
            stmfd   sp!, {r0, lr}
                                ; push the register that
                                ; you want to save
            adr     r1, char
            strb    r0, [r1]
            mov     r0, #3
            swi     0x123456
            
            ldmfd   sp!, {r0,pc}
char        DCB     0   
How can I proceed to convert the rest of the code?
I appreciate any feedback, even rough ideas.
Thank you for reading my question.
Addendum:
ARM v1.2 refers to
ARM®, Developer Suite, Version 1.2, Assembler Guide, Copyright © 2000, 2001 ARM Limited.
 
     
    