Update 'soft/PjtKEIL_StepDFT/Src/DFT.s'

This commit is contained in:
Oussama Hannouch 2023-05-10 16:02:25 +02:00
parent 8c7d54b49e
commit 822e60b616

View file

@ -23,30 +23,35 @@
export DFT_ModuleAuCarre export DFT_ModuleAuCarre
DFT_ModuleAuCarre proc DFT_ModuleAuCarre proc
push {r4, r5, r6, r8, r9, r10} ; push {r4, r5, r6, r8, r9, r10}; sauvegarde des registres dans la pile
eor r2, r2 ; partie imaginaire = 0 mov r2, #0
eor r3, r3 ; partie reelle = 0 mov r3, #0
eor r7, r7 ; mov r7 ,#0
eor r4, r4 ; mov r4 ,#0
ldr r5, =TabCos ldr r5, =TabCos
ldr r6, =TabSin ldr r6, =TabSin
SumLoop
ldrsh r8, [r0, r4, lsl #1] ;
ldrsh r9, [r5, r7, lsl #1] ; Sommation
ldrsh r8,[r0, r4, lsl#1]
ldrsh r9,[r5, r7, lsl #1]
ldrsh r10,[r6, r7, lsl #1]
mul r9, r8, r9 mul r9, r8, r9
asr r9, #15 ; mul r10, r8, r10
asr r9, #15
asr r10, #15
add r3,r3, r9 add r3,r3, r9
add r7, r1 ; add r2,r2, r10
add r4, r4, #1 ; ++n add r7, r1
add r4, r4, #1
cmp r4 ,#64 cmp r4 ,#64
bcc SumLoop ; if n < 64 refaire blt Sommation
mov r0, r3
mov r0, r3 ; partie reelle mov r1, r2
pop{r4, r5, r6, r7, r8, r9, r10}
pop {r4, r5, r6, r8, r9, r10}
bx lr bx lr
endp endp