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

📄 function.asm

📁 基于TMS320F2812的AMR+RS编解码+OFDM调制解调源程序。是stand alone运行版本
💻 ASM
📖 第 1 页 / 共 3 页
字号:
	;.line	101
 addl  acc,P
	;.line	102
 SFR   acc,#14
	;.line	103
 movl  @_TmpI, acc
	;.line	104
 mov   acc,@_i << 1
	;.line	105
 movz  ar1,al
	;.line	107
 movl  acc,*+xar4[ar1]
	;.line	108
 subl  acc,@_TmpR
	;.line	109
 movl  *+xar4[ar0],acc
	;.line	111
 movl  acc,*+xar6[ar1]
	;.line	112
 subl  acc,@_TmpI
	;.line	113
 movl  *+xar6[ar0],acc
	;.line	115
 movl  acc,@_TmpR
	;.line	116
 addl  *+xar4[ar1],acc
	;.line	118
 movl  acc,@_TmpI
	;.line	119
 addl  *+xar6[ar1],acc
	;.line	131
        MOV       AH,@_i                ; |156| 
        ADD       AH,AR3                ; |156| 
        CMPB      AH,#64                ; |156| 
        MOV       @_i,AH                ; |156| 
        B         L21,LT                ; |156| 
        ; branch occurs ; |156| 
L22:    
	;.line	132
        INC       @_j                   ; |157| 
        MOV       AH,AR5                ; |157| 
        CMP       AH,@_j                ; |157| 
        B         L20,GT                ; |157| 
        ; branch occurs ; |157| 
L23:    
	;.line	133
        MOV       AH,AR1
        ADDB      AH,#1                 ; |158| 
        CMPB      AH,#6                 ; |158| 
        MOVZ      AR1,AH                ; |158| 
        B         L19,LEQ               ; |158| 
        ; branch occurs ; |158| 
	;.line	136
        CMP       AR7,#-1               ; |161| 
        BF        L25,NEQ               ; |161| 
        ; branch occurs ; |161| 
	;.line	138
        MOV       @_i,#0                ; |163| 
L24:    
	;.line	140
        SETC      SXM
        MOV       ACC,@_i << 1          ; |165| 
        MOVL      XAR6,ACC              ; |165| 
        MOVL      ACC,XAR0              ; |165| 
        ADDL      ACC,XAR6
        MOVL      XAR4,ACC              ; |165| 
        MOVL      ACC,*+XAR4[0]         ; |165| 
        SFR       ACC,6                 ; |165| 
        MOVL      *+XAR4[0],ACC         ; |165| 
	;.line	141
        MOVL      ACC,XAR2              ; |166| 
        ADDL      ACC,XAR6
        MOVL      XAR5,ACC              ; |166| 
        MOVL      ACC,*+XAR5[0]         ; |166| 
        SFR       ACC,6                 ; |166| 
        MOVL      *+XAR5[0],ACC         ; |166| 
	;.line	142
        INC       @_i
        MOV       AL,@_i
        CMPB      AL,#64                ; |167| 
        B         L24,LT                ; |167| 
        ; branch occurs ; |167| 
L25:    
	;.line	144
        MOVL      XAR3,*--SP
        MOVL      XAR2,*--SP
        MOVL      XAR1,*--SP
        LRETR
        ; return occurs
	.endfunc	169,000000fc0h,6



	.sect	".text"
	.global	_ConvBase
	.sym	_ConvBase,_ConvBase, 32, 2, 0
	.func	187

;***************************************************************
;* FNAME: _ConvBase                     FR SIZE:   0           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  0 Auto,  0 SOE     *
;***************************************************************


;***************************************************************
;*                                                             *
;* Using -g (debug) with optimization (-o3) may disable key op *
;*                                                             *
;***************************************************************
_ConvBase:
	;.line	2
;* AR4   assigned to _DataIn
	.sym	_DataIn,12, 29, 17, 22
;* AR5   assigned to _DataOut
	.sym	_DataOut,14, 29, 17, 22
;* AL    assigned to _DataLen
	.sym	_DataLen,0, 4, 17, 16
;* AH    assigned to _Sign
	.sym	_Sign,1, 4, 17, 16
;* AR6   assigned to V$0
;* AR5   assigned to V$1
;* AR4   assigned to _DataIn
	.sym	_DataIn,12, 29, 4, 22
;* AR5   assigned to _DataOut
	.sym	_DataOut,14, 29, 4, 22
;* PH    assigned to _DataLen
	.sym	_DataLen,3, 4, 4, 16
;* AH    assigned to _Sign
	.sym	_Sign,1, 4, 4, 16
;* PL    assigned to _k
	.sym	_k,2, 4, 4, 16
;* AR4   assigned to L$1
;* AR6   assigned to U$4
;* AR5   assigned to U$5
;* T     assigned to U$23
;* AR5   assigned to U$20
        MOV       PH,AL                 ; |188| 
	;.line	4
        MOVW      DP,#_point_DataIn
        MOVL      @_point_DataIn,XAR4
        MOVL      XAR6,XAR4
	;.line	5
        MOVL      @_point_DataOut,XAR5  ; |191| 
	;.line	7
        CMPB      AH,#1                 ; |193| 
        BF        L33,EQ                ; |193| 
        ; branch occurs ; |193| 
	;.line	25
        CMPB      AH,#0                 ; |211| 
        BF        L30,NEQ               ; |211| 
        ; branch occurs ; |211| 
	;.line	30
        MOV       @_i,#0                ; |216| 
	;.line	47
        CMPB      AL,#0                 ; |233| 
        B         L36,LEQ               ; |233| 
        ; branch occurs ; |233| 
	;.line	29
        MOV       PL,#0                 ; |215| 
L26:    
        MOV       ACC,PL << #1
        MOV       T,AL
	;.line	32
        MOV       AH,PL
        BF        L27,NEQ               ; |218| 
        ; branch occurs ; |218| 
	;.line	34
        MOV       *+XAR5[0],#0          ; |220| 
L27:    
	;.line	36
        SETC      SXM
        MOV       ACC,@_i               ; |222| 
        ADDL      ACC,XAR4
        MOVL      XAR7,ACC              ; |222| 
        MOVB      AH,#1                 ; |222| 
        LSL       AH,T                  ; |222| 
        MOV       T,AH                  ; |222| 
        MPY       ACC,T,*+XAR7[0]       ; |222| 
        ADD       *+XAR5[0],AL          ; |222| 
	;.line	37
        MOV       AH,PL
        CMPB      AH,#2                 ; |223| 
        BF        L28,EQ                ; |223| 
        ; branch occurs ; |223| 
	;.line	44
        ADDB      AH,#1                 ; |230| 
        MOV       PL,AH                 ; |230| 
        B         L29,UNC               ; |230| 
        ; branch occurs ; |230| 
L28:    
	;.line	39
        ADDB      XAR5,#1               ; |225| 
	;.line	40
        MOV       PL,#0                 ; |226| 
L29:    
	;.line	46
        INC       @_i                   ; |232| 
        MOV       AL,PH                 ; |232| 
        CMP       AL,@_i                ; |232| 
        B         L26,GT                ; |232| 
        ; branch occurs ; |232| 
        B         L36,UNC               ; |232| 
        ; branch occurs ; |232| 
L30:    
	;.line	51
 push xar0
	;.line	52
 push xar6
	;.line	53
 push xar7
	;.line	54
 movl xar6,@_point_DataIn
	;.line	55
 movl xar7,@_point_DataOut
	;.line	56
        MOV       @_i,#0                ; |242| 
	;.line	62
        CMPB      AL,#0                 ; |248| 
        B         L32,LEQ               ; |248| 
        ; branch occurs ; |248| 
L31:    
	;.line	58
 movz ar0,@_i
	;.line	59
 mov al,*+xar6[ar0]
	;.line	60
 mov *+xar7[ar0],al
	;.line	62
        INC       @_i                   ; |248| 
        MOV       AL,PH                 ; |248| 
        CMP       AL,@_i                ; |248| 
        B         L31,GT                ; |248| 
        ; branch occurs ; |248| 
L32:    
	;.line	63
 pop xar7
	;.line	64
 pop xar6
	;.line	65
 pop xar0
        B         L36,UNC               ; |251| 
        ; branch occurs ; |251| 
L33:    
	;.line	10
        MOV       @_i,#0                ; |196| 
	;.line	24
        CMPB      AL,#0                 ; |210| 
        B         L36,LEQ               ; |210| 
        ; branch occurs ; |210| 
L34:    
	;.line	12
        MOV       T,@_i                 ; |198| 
        MPYB      ACC,T,#3              ; |198| 
        ADDL      XAR5,ACC
	;.line	13
        SETC      SXM
        MOV       ACC,@_i               ; |199| 
        ADDL      XAR6,ACC
        MOVB      XAR4,#2
L35:    
	;.line	19
        MOV       AH,*+XAR6[0]          ; |205| 
        ANDB      AH,#0x03              ; |205| 
        MOV       *XAR5++,AH            ; |205| 
	;.line	20
        MOV       AH,*+XAR6[0]          ; |206| 
        LSR       AH,2                  ; |206| 
        MOV       *+XAR6[0],AH          ; |206| 
	;.line	22
        BANZ      L35,AR4--
        ; branch occurs ; |208| 
	;.line	23
        MOVW      DP,#_i
        INC       @_i                   ; |209| 
        MOV       AL,PH                 ; |209| 
        CMP       AL,@_i                ; |209| 
        B         L34,GT                ; |209| 
        ; branch occurs ; |209| 
        MOVL      @_point_DataOut,XAR5
        MOVL      @_point_DataIn,XAR6
L36:    
	;.line	67
        LRETR
        ; return occurs
	.endfunc	253,000000000h,0



	.sect	".text"
	.global	_ChanToSrc
	.sym	_ChanToSrc,_ChanToSrc, 32, 2, 0
	.func	308

;***************************************************************
;* FNAME: _ChanToSrc                    FR SIZE:   0           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  0 Auto,  0 SOE     *
;***************************************************************


;***************************************************************
;*                                                             *
;* Using -g (debug) with optimization (-o3) may disable key op *
;*                                                             *
;***************************************************************
_ChanToSrc:
	;.line	2
;* AR4   assigned to _ChannelData
	.sym	_ChannelData,12, 29, 17, 22
;* AR5   assigned to _SrcData
	.sym	_SrcData,14, 19, 17, 22
	.sym	_PosMark,-4, 19, 9, 22
;* AR4   assigned to _ChannelData
	.sym	_ChannelData,12, 29, 4, 22
;* AR5   assigned to _SrcData
	.sym	_SrcData,14, 19, 4, 22
;* AR0   assigned to _PosMark
	.sym	_PosMark,4, 19, 4, 22
;* AR7   assigned to _pChaData
	.sym	_pChaData,18, 29, 4, 22
;* AR5   assigned to _pSrcData
	.sym	_pSrcData,14, 19, 4, 22
;* AR6   assigned to L$2
;* AR4   assigned to L$1
        MOVL      XAR0,*-SP[4]          ; |309| 
	;.line	4
        MOVL      XAR7,XAR4             ; |311| 
	;.line	5
        SETC      SXM
        MOV       ACC,*+XAR0[0]         ; |312| 
        ADDL      ACC,XAR5
        MOVL      XAR5,ACC              ; |312| 
        MOVB      XAR4,#42
L37:    
        MOVB      XAR6,#5
L38:    
	;.line	11
        MOV       AL,*+XAR7[0]          ; |318| 
        ANDB      AL,#0x01              ; |318| 
        MOV       *XAR5++,AL            ; |318| 
	;.line	12
        MOV       AL,*+XAR7[0]          ; |319| 
        LSR       AL,1                  ; |319| 
        MOV       *+XAR7[0],AL          ; |319| 
	;.line	13
        INC       *+XAR0[0]             ; |320| 
	;.line	15
        BANZ      L38,AR6--
        ; branch occurs ; |322| 
	;.line	16
        ADDB      XAR7,#1               ; |323| 
	;.line	17
        BANZ      L37,AR4--
        ; branch occurs ; |324| 
	;.line	18
        LRETR
        ; return occurs
	.endfunc	325,000000000h,0


;***************************************************************
;* UNDEFINED EXTERNAL REFERENCES                               *
;***************************************************************
	.global	FS$$CMP
	.global	FS$$SUB
	.global	FS$$TOI
	.global	UL$$DIV

;***************************************************************
;* TYPE INFORMATION                                            *
;***************************************************************
	.sym	_WordType, 0, 3, 13, 16
	.sym	_WordType, 0, 3, 13, 16
	.sym	_DType, 0, 13, 13, 16

⌨️ 快捷键说明

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