⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fft2.asm

📁 VC33进行FFT变换c源码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
; 107 | for (j=0;j<mid[i];j++)                                                 
;----------------------------------------------------------------------
        ldiu      0,r0                  ; |107| 
        sti       r0,*+fp(2)            ; |107| 
        ldiu      @CL16,ar0             ; |107| 
        ldiu      *+fp(1),ir0           ; |107| 
        cmpi3     *+ar0(ir0),r0         ; |107| 
        bge       L20                   ; |107| 
;*      Branch Occurs to L20            ; |107| 
L19:        
	.line	10
;----------------------------------------------------------------------
; 109 | Pset=j*inner[i];                                                       
;----------------------------------------------------------------------
        ldiu      *+fp(1),ir0           ; |109| 
        ldiu      @CL17,ar0             ; |109| 
        ldiu      *+fp(2),r0            ; |109| 
        mpyi      *+ar0(ir0),r0         ; |109| 
        sti       r0,@_Pset+0           ; |109| 
	.line	11
;----------------------------------------------------------------------
; 110 | local0=2*j+k*mid2[i];local1=local0+1; win0=local0+mid1[i];win1=local1+m
;     | id1[i];                                                                
;----------------------------------------------------------------------
        ldiu      *+fp(2),r1            ; |110| 
        ldiu      *+fp(3),r0            ; |110| 
        ldiu      @CL18,ar0             ; |110| 
        mpyi      2,r1                  ; |110| 
        mpyi      *+ar0(ir0),r0         ; |110| 
        addi3     r0,r1,r0              ; |110| 
        sti       r0,*+fp(4)            ; |110| 
        ldiu      1,r0                  ; |110| 
        addi      *+fp(4),r0            ; |110| 
        sti       r0,*+fp(5)            ; |110| 
        ldiu      @CL19,ar0             ; |110| 
        ldiu      *+ar0(ir0),r0         ; |110| 
        addi      *+fp(4),r0            ; |110| 
        sti       r0,*+fp(6)            ; |110| 
        ldiu      *+ar0(ir0),r0         ; |110| 
        addi      *+fp(5),r0            ; |110| 
        sti       r0,*+fp(7)            ; |110| 
	.line	12
;----------------------------------------------------------------------
; 111 | fft_in[local0]=fft_out[local0]+fft_out[win0];                          
;----------------------------------------------------------------------
        ldiu      @CL9,ar2              ; |111| 
        ldiu      @CL20,ar1             ; |111| 
        ldiu      @CL20,ar0             ; |111| 
        ldiu      *+fp(4),ir0           ; |111| 
        ldiu      *+fp(6),ir1           ; |111| 
        addf3     *+ar0(ir0),*+ar1(ir1),f1 ; |111| 
        stf       f1,*+ar2(ir0)         ; |111| 
	.line	13
;----------------------------------------------------------------------
; 112 | fft_in[local1]=fft_out[local1]+fft_out[win1];                          
;----------------------------------------------------------------------
        ldiu      *+fp(5),ir0           ; |112| 
        ldiu      *+fp(7),ir1           ; |112| 
        addf3     *+ar0(ir0),*+ar1(ir1),f1 ; |112| 
        stf       f1,*+ar2(ir0)         ; |112| 
	.line	14
;----------------------------------------------------------------------
; 113 | fft_in[win0]=(fft_out[local0]-fft_out[win0])*ctab[Pset]-(fft_out[local1
;     | ]-fft_out[win1])*stab[Pset];                                           
;----------------------------------------------------------------------
        ldiu      *+fp(4),ir0           ; |113| 
        ldiu      *+fp(6),ir1           ; |113| 
        ldiu      @CL20,ar4             ; |113| 
        ldiu      @CL20,ar5             ; |113| 
        ldiu      *+fp(5),r2            ; |113| 
        ldiu      @CL22,ar2             ; |113| 
        ldiu      *+fp(7),r3            ; |113| 
        ldiu      @CL21,ar6             ; |113| 
        subf3     *+ar1(ir1),*+ar0(ir0),f1 ; |113| 
        ldiu      @_Pset+0,r0           ; |113| 
        ldiu      @CL9,ar0              ; |113| 
        ldiu      r2,ir0                ; |113| 
        ldiu      r3,ir1                ; |113| 
        subf3     *+ar5(ir1),*+ar4(ir0),f2 ; |113| 
        ldiu      r0,ir0                ; |113| 
        ldiu      r0,ir1                ; |113| 
        mpyf3     *+ar6(ir0),f1,f0      ; |113| 
        mpyf3     *+ar2(ir1),f2,f1      ; |113| 
        ldiu      *+fp(6),ir0           ; |113| 
        subrf     f0,f1                 ; |113| 
        stf       f1,*+ar0(ir0)         ; |113| 
	.line	15
;----------------------------------------------------------------------
; 114 | fft_in[win1]=(fft_out[local1]-fft_out[win1])*ctab[Pset]+(fft_out[local0
;     | ]-fft_out[win0])*stab[Pset];                                           
; 117 | else                                                                   
;----------------------------------------------------------------------
        ldiu      @CL20,ar2             ; |114| 
        ldiu      *+fp(4),ir0           ; |114| 
        ldiu      *+fp(6),ir1           ; |114| 
        ldiu      @CL21,ar4             ; |114| 
        ldiu      *+fp(5),r3            ; |114| 
        ldiu      @CL22,ar0             ; |114| 
        ldiu      *+fp(7),r2            ; |114| 
        ldiu      @CL20,ar7             ; |114| 
        ldiu      @CL20,ar6             ; |114| 
        ldiu      @_Pset+0,r1           ; |114| 
        ldiu      @CL9,ar5              ; |114| 
        subf3     *+ar2(ir1),*+ar1(ir0),f0 ; |114| 
        ldiu      r2,ir0                ; |114| 
        ldiu      r3,ir1                ; |114| 
        subf3     *+ar6(ir0),*+ar7(ir1),f2 ; |114| 
        ldiu      r1,ir0                ; |114| 
        mpyf3     *+ar0(ir0),f0,f0      ; |114| 
        mpyf3     *+ar4(ir0),f2,f1      ; |114| 
        ldiu      *+fp(7),ir0           ; |114| 
        addf3     f1,f0,f0              ; |114| 
        stf       f0,*+ar5(ir0)         ; |114| 
	.line	8
        ldiu      1,r0                  ; |107| 
        addi      *+fp(2),r0            ; |107| 
        sti       r0,*+fp(2)            ; |107| 
        ldiu      @CL16,ar0             ; |107| 
        ldiu      *+fp(1),ir0           ; |107| 
        cmpi3     *+ar0(ir0),r0         ; |107| 
        blt       L19                   ; |107| 
;*      Branch Occurs to L19            ; |107| 
L20:        
	.line	7
        ldiu      1,r0                  ; |106| 
        addi      *+fp(3),r0            ; |106| 
        sti       r0,*+fp(3)            ; |106| 
        ldiu      @CL15,ar0             ; |106| 
        ldiu      *+fp(1),ir0           ; |106| 
        cmpi3     *+ar0(ir0),r0         ; |106| 
        blt       L18                   ; |106| 
;*      Branch Occurs to L18            ; |106| 
        bu        L26                   ; |99| 
;*      Branch Occurs to L26            ; |99| 
L22:        
	.line	19
;----------------------------------------------------------------------
; 118 | for (k=0;k<i_k[i];k++)                                                 
;----------------------------------------------------------------------
        ldiu      0,r0                  ; |118| 
        sti       r0,*+fp(3)            ; |118| 
        ldiu      @CL15,ar0             ; |118| 
        ldiu      *+fp(1),ir0           ; |118| 
        cmpi3     *+ar0(ir0),r0         ; |118| 
        bge       L26                   ; |118| 
;*      Branch Occurs to L26            ; |118| 
L23:        
	.line	20
;----------------------------------------------------------------------
; 119 | for (j=0;j<mid[i];j++)                                                 
;----------------------------------------------------------------------
        ldiu      0,r0                  ; |119| 
        sti       r0,*+fp(2)            ; |119| 
        ldiu      @CL16,ar0             ; |119| 
        ldiu      *+fp(1),ir0           ; |119| 
        cmpi3     *+ar0(ir0),r0         ; |119| 
        bge       L25                   ; |119| 
;*      Branch Occurs to L25            ; |119| 
L24:        
	.line	22
;----------------------------------------------------------------------
; 121 | Pset=j*inner[i];                                                       
;----------------------------------------------------------------------
        ldiu      *+fp(1),ir0           ; |121| 
        ldiu      @CL17,ar0             ; |121| 
        ldiu      *+fp(2),r0            ; |121| 
        mpyi      *+ar0(ir0),r0         ; |121| 
        sti       r0,@_Pset+0           ; |121| 
	.line	23
;----------------------------------------------------------------------
; 122 | local0=2*j+k*mid2[i];local1=local0+1; win0=local0+mid1[i];win1=local1+m
;     | id1[i];                                                                
;----------------------------------------------------------------------
        ldiu      *+fp(3),r1            ; |122| 
        ldiu      *+fp(2),r0            ; |122| 
        ldiu      @CL18,ar0             ; |122| 
        mpyi      *+ar0(ir0),r1         ; |122| 
        mpyi      2,r0                  ; |122| 
        addi3     r1,r0,r0              ; |122| 
        sti       r0,*+fp(4)            ; |122| 
        ldiu      1,r0                  ; |122| 
        addi      *+fp(4),r0            ; |122| 
        sti       r0,*+fp(5)            ; |122| 
        ldiu      @CL19,ar0             ; |122| 
        ldiu      *+ar0(ir0),r0         ; |122| 
        addi      *+fp(4),r0            ; |122| 
        sti       r0,*+fp(6)            ; |122| 
        ldiu      *+ar0(ir0),r0         ; |122| 
        addi      *+fp(5),r0            ; |122| 
        sti       r0,*+fp(7)            ; |122| 
	.line	24
;----------------------------------------------------------------------
; 123 | fft_out[local0]=fft_in[local0]+fft_in[win0];                           
;----------------------------------------------------------------------
        ldiu      @CL9,ar1              ; |123| 
        ldiu      @CL9,ar2              ; |123| 
        ldiu      *+fp(6),ir1           ; |123| 
        ldiu      @CL20,ar0             ; |123| 
        ldiu      *+fp(4),ir0           ; |123| 
        addf3     *+ar2(ir0),*+ar1(ir1),f1 ; |123| 
        stf       f1,*+ar0(ir0)         ; |123| 
	.line	25
;----------------------------------------------------------------------
; 124 | fft_out[local1]=fft_in[local1]+fft_in[win1];                           
;----------------------------------------------------------------------
        ldiu      *+fp(7),ir1           ; |124| 
        ldiu      *+fp(5),ir0           ; |124| 
        addf3     *+ar2(ir0),*+ar1(ir1),f1 ; |124| 
        stf       f1,*+ar0(ir0)         ; |124| 
	.line	26
;----------------------------------------------------------------------
; 125 | fft_out[win0]=(fft_in[local0]-fft_in[win0])*ctab[Pset]-(fft_in[local1]-
;     | fft_in[win1])*stab[Pset];                                              
;----------------------------------------------------------------------
        ldiu      *+fp(4),ir1           ; |125| 
        ldiu      *+fp(6),ir0           ; |125| 
        ldiu      *+fp(5),r2            ; |125| 
        ldiu      *+fp(7),r3            ; |125| 
        ldiu      @CL22,ar4             ; |125| 
        ldiu      @CL21,ar6             ; |125| 
        ldiu      @CL9,ar5              ; |125| 
        ldiu      @CL9,ar0              ; |125| 
        subf3     *+ar2(ir0),*+ar1(ir1),f0 ; |125| 
        ldiu      @_Pset+0,r1           ; |125| 
        ldiu      @CL20,ar1             ; |125| 
        ldiu      r3,ir0                ; |125| 
        ldiu      r2,ir1                ; |125| 
        subf3     *+ar0(ir0),*+ar5(ir1),f2 ; |125| 
        ldiu      r1,ir0                ; |125| 
        ldiu      r1,ir1                ; |125| 
        mpyf3     *+ar6(ir0),f0,f0      ; |125| 
        mpyf3     *+ar4(ir1),f2,f1      ; |125| 
        ldiu      *+fp(6),ir0           ; |125| 
        subrf     f0,f1                 ; |125| 
        stf       f1,*+ar1(ir0)         ; |125| 
	.line	27
;----------------------------------------------------------------------
; 126 | fft_out[win1]=(fft_in[local1]-fft_in[win1])*ctab[Pset]+(fft_in[local0]-
;     | fft_in[win0])*stab[Pset];                                              
;----------------------------------------------------------------------
        ldiu      @CL9,ar6              ; |126| 
        ldiu      *+fp(6),ir0           ; |126| 
        ldiu      *+fp(4),ir1           ; |126| 
        ldiu      *+fp(5),r3            ; |126| 
        ldiu      @CL9,ar4              ; |126| 
        ldiu      @CL21,ar5             ; |126| 
        ldiu      @CL22,ar7             ; |126| 
        ldiu      *+fp(7),r2            ; |126| 
        ldiu      @_Pset+0,r0           ; |126| 
        subf3     *+ar6(ir0),*+ar0(ir1),f1 ; |126| 
        ldiu      r3,ir1                ; |126| 
        ldiu      r2,ir0                ; |126| 
        subf3     *+ar2(ir0),*+ar4(ir1),f2 ; |126| 
        ldiu      r0,ir0                ; |126| 
        mpyf3     *+ar7(ir0),f1,f0      ; |126| 
        mpyf3     *+ar5(ir0),f2,f1      ; |126| 
        ldiu      *+fp(7),ir0           ; |126| 
        addf3     f1,f0,f0              ; |126| 
        stf       f0,*+ar1(ir0)         ; |126| 
	.line	20
        ldiu      1,r0                  ; |119| 
        addi      *+fp(2),r0            ; |119| 
        sti       r0,*+fp(2)            ; |119| 
        ldiu      *+fp(1),ir0           ; |119| 
        ldiu      @CL16,ar0             ; |119| 
        cmpi3     *+ar0(ir0),r0         ; |119| 
        blt       L24                   ; |119| 
;*      Branch Occurs to L24            ; |119| 
L25:        
	.line	19
        ldiu      1,r0                  ; |118| 
        addi      *+fp(3),r0            ; |118| 
        sti       r0,*+fp(3)            ; |118| 
        ldiu      @CL15,ar0             ; |118| 
        ldiu      *+fp(1),ir0           ; |118| 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -