📄 iqsample.asm
字号:
;***************************************************************
;* TMS320C2000 C/C++ Codegen PC v4.1.3 *
;* Date/Time created: Fri Nov 14 12:48:08 2008 *
;***************************************************************
.compiler_opts --mem_model:code=flat --mem_model:data=large --quiet --silicon_version=28
FP .set XAR2
DW$CU .dwtag DW_TAG_compile_unit
.dwattr DW$CU, DW_AT_name("IQsample.c")
.dwattr DW$CU, DW_AT_producer("TMS320C2000 C/C++ Codegen PC v4.1.3 Copyright (c) 1996-2006 Texas Instruments Incorporated")
.dwattr DW$CU, DW_AT_stmt_list(0x00)
.dwattr DW$CU, DW_AT_TI_VERSION(0x01)
;**************************************************************
;* CINIT RECORDS *
;**************************************************************
.sect ".cinit"
.align 1
.field -2,16
.field _GlobalQ+0,32
.field 9,32 ; _GlobalQ @ 0
DW$1 .dwtag DW_TAG_subprogram, DW_AT_name("puts"), DW_AT_symbol_name("_puts")
.dwattr DW$1, DW_AT_type(*DW$T$10)
.dwattr DW$1, DW_AT_declaration(0x01)
.dwattr DW$1, DW_AT_external(0x01)
DW$2 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$30)
.dwendtag DW$1
DW$3 .dwtag DW_TAG_subprogram, DW_AT_name("_IQ9mag"), DW_AT_symbol_name("__IQ9mag")
.dwattr DW$3, DW_AT_type(*DW$T$12)
.dwattr DW$3, DW_AT_declaration(0x01)
.dwattr DW$3, DW_AT_external(0x01)
DW$4 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
DW$5 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$3
DW$6 .dwtag DW_TAG_subprogram, DW_AT_name("_IQ9mpyI32int"), DW_AT_symbol_name("__IQ9mpyI32int")
.dwattr DW$6, DW_AT_type(*DW$T$12)
.dwattr DW$6, DW_AT_declaration(0x01)
.dwattr DW$6, DW_AT_external(0x01)
DW$7 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
DW$8 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$6
DW$9 .dwtag DW_TAG_subprogram, DW_AT_name("_atoIQN"), DW_AT_symbol_name("__atoIQN")
.dwattr DW$9, DW_AT_type(*DW$T$12)
.dwattr DW$9, DW_AT_declaration(0x01)
.dwattr DW$9, DW_AT_external(0x01)
DW$10 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$30)
DW$11 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$9
.global _finput
_finput: .usect ".ebss",2,1,1
DW$12 .dwtag DW_TAG_variable, DW_AT_name("finput"), DW_AT_symbol_name("_finput")
.dwattr DW$12, DW_AT_location[DW_OP_addr _finput]
.dwattr DW$12, DW_AT_type(*DW$T$19)
.dwattr DW$12, DW_AT_external(0x01)
.global _foutput
_foutput: .usect ".ebss",2,1,1
DW$13 .dwtag DW_TAG_variable, DW_AT_name("foutput"), DW_AT_symbol_name("_foutput")
.dwattr DW$13, DW_AT_location[DW_OP_addr _foutput]
.dwattr DW$13, DW_AT_type(*DW$T$19)
.dwattr DW$13, DW_AT_external(0x01)
.global _GlobalQ
_GlobalQ: .usect ".ebss",2,1,1
DW$14 .dwtag DW_TAG_variable, DW_AT_name("GlobalQ"), DW_AT_symbol_name("_GlobalQ")
.dwattr DW$14, DW_AT_location[DW_OP_addr _GlobalQ]
.dwattr DW$14, DW_AT_type(*DW$T$12)
.dwattr DW$14, DW_AT_external(0x01)
DW$15 .dwtag DW_TAG_subprogram, DW_AT_name("gets"), DW_AT_symbol_name("_gets")
.dwattr DW$15, DW_AT_type(*DW$T$26)
.dwattr DW$15, DW_AT_declaration(0x01)
.dwattr DW$15, DW_AT_external(0x01)
DW$16 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$26)
.dwendtag DW$15
DW$17 .dwtag DW_TAG_subprogram, DW_AT_name("_IQ9div"), DW_AT_symbol_name("__IQ9div")
.dwattr DW$17, DW_AT_type(*DW$T$12)
.dwattr DW$17, DW_AT_declaration(0x01)
.dwattr DW$17, DW_AT_external(0x01)
DW$18 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
DW$19 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$17
DW$20 .dwtag DW_TAG_subprogram, DW_AT_name("labs"), DW_AT_symbol_name("_labs")
.dwattr DW$20, DW_AT_type(*DW$T$12)
.dwattr DW$20, DW_AT_declaration(0x01)
.dwattr DW$20, DW_AT_external(0x01)
DW$21 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$20
DW$22 .dwtag DW_TAG_subprogram, DW_AT_name("_IQ9exp"), DW_AT_symbol_name("__IQ9exp")
.dwattr DW$22, DW_AT_type(*DW$T$12)
.dwattr DW$22, DW_AT_declaration(0x01)
.dwattr DW$22, DW_AT_external(0x01)
DW$23 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$22
DW$24 .dwtag DW_TAG_subprogram, DW_AT_name("_IQ9atan2PU"), DW_AT_symbol_name("__IQ9atan2PU")
.dwattr DW$24, DW_AT_type(*DW$T$12)
.dwattr DW$24, DW_AT_declaration(0x01)
.dwattr DW$24, DW_AT_external(0x01)
DW$25 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
DW$26 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$24
DW$27 .dwtag DW_TAG_subprogram, DW_AT_name("__IQmpy"), DW_AT_symbol_name("___IQmpy")
.dwattr DW$27, DW_AT_type(*DW$T$12)
.dwattr DW$27, DW_AT_declaration(0x01)
.dwattr DW$27, DW_AT_external(0x01)
DW$28 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
DW$29 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
DW$30 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
.dwendtag DW$27
DW$31 .dwtag DW_TAG_subprogram, DW_AT_name("_IQ9sin"), DW_AT_symbol_name("__IQ9sin")
.dwattr DW$31, DW_AT_type(*DW$T$12)
.dwattr DW$31, DW_AT_declaration(0x01)
.dwattr DW$31, DW_AT_external(0x01)
DW$32 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$12)
.dwendtag DW$31
.global _Step
_Step: .usect ".ebss",18,1,1
DW$33 .dwtag DW_TAG_variable, DW_AT_name("Step"), DW_AT_symbol_name("_Step")
.dwattr DW$33, DW_AT_location[DW_OP_addr _Step]
.dwattr DW$33, DW_AT_type(*DW$T$23)
.dwattr DW$33, DW_AT_external(0x01)
.global _Dlog
_Dlog: .usect ".ebss",640,1,1
DW$34 .dwtag DW_TAG_variable, DW_AT_name("Dlog"), DW_AT_symbol_name("_Dlog")
.dwattr DW$34, DW_AT_location[DW_OP_addr _Dlog]
.dwattr DW$34, DW_AT_type(*DW$T$22)
.dwattr DW$34, DW_AT_external(0x01)
; C:\CCStudio_v3.3\C2000\cgtools\bin\opt2000.exe C:\DOCUME~1\STANLE~1.CHE\LOCALS~1\Temp\TI0082 C:\DOCUME~1\STANLE~1.CHE\LOCALS~1\Temp\TI0084
; C:\CCStudio_v3.3\C2000\cgtools\bin\ac2000.exe -@C:\DOCUME~1\STANLE~1.CHE\LOCALS~1\Temp\TI00812
.sect ".text"
.global _main
DW$35 .dwtag DW_TAG_subprogram, DW_AT_name("main"), DW_AT_symbol_name("_main")
.dwattr DW$35, DW_AT_low_pc(_main)
.dwattr DW$35, DW_AT_high_pc(0x00)
.dwattr DW$35, DW_AT_begin_file("IQsample.c")
.dwattr DW$35, DW_AT_begin_line(0x3d)
.dwattr DW$35, DW_AT_begin_column(0x05)
.dwpsn "IQsample.c",62,1
.dwfde DW$CIE
;***************************************************************
;* FNAME: _main FR SIZE: 40 *
;* *
;* FUNCTION ENVIRONMENT *
;* *
;* FUNCTION PROPERTIES *
;* 2 Parameter, 32 Auto, 6 SOE *
;***************************************************************
;***************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key op *
;* *
;***************************************************************
_main:
.dwcfa 0x1d, -2
.dwcfa 0x1c, 26, 0
.dwcfa 0x09, 40, 26
MOVL *SP++,XAR1
.dwcfa 0x80, 7, 2
.dwcfa 0x1d, -4
MOVL *SP++,XAR2
.dwcfa 0x80, 9, 4
.dwcfa 0x1d, -6
MOVL *SP++,XAR3
.dwcfa 0x80, 11, 6
.dwcfa 0x1d, -8
ADDB SP,#34
.dwcfa 0x1d, -42
;* AR6 assigned to L$1
;* AR2 assigned to _tempMmax
DW$36 .dwtag DW_TAG_variable, DW_AT_name("tempMmax"), DW_AT_symbol_name("_tempMmax")
.dwattr DW$36, DW_AT_type(*DW$T$19)
.dwattr DW$36, DW_AT_location[DW_OP_reg8]
DW$37 .dwtag DW_TAG_variable, DW_AT_name("tempY"), DW_AT_symbol_name("_tempY")
.dwattr DW$37, DW_AT_type(*DW$T$19)
.dwattr DW$37, DW_AT_location[DW_OP_breg20 -34]
DW$38 .dwtag DW_TAG_variable, DW_AT_name("tempX"), DW_AT_symbol_name("_tempX")
.dwattr DW$38, DW_AT_type(*DW$T$19)
.dwattr DW$38, DW_AT_location[DW_OP_breg20 -32]
;* AR3 assigned to _i
DW$39 .dwtag DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
.dwattr DW$39, DW_AT_type(*DW$T$11)
.dwattr DW$39, DW_AT_location[DW_OP_reg10]
;* AL assigned to v$1
;* AL assigned to v$2
;* AL assigned to v$3
;* AL assigned to v$4
;* AR6 assigned to v$5
;* PL assigned to v$6
;* AL assigned to v$7
;* AL assigned to v$8
;* AL assigned to v$9
;* AL assigned to v$10
;* AR4 assigned to U$20
;* AR1 assigned to U$20
DW$40 .dwtag DW_TAG_variable, DW_AT_name("buffer"), DW_AT_symbol_name("_buffer")
.dwattr DW$40, DW_AT_type(*DW$T$50)
.dwattr DW$40, DW_AT_location[DW_OP_breg20 -22]
EALLOW
.dwpsn "IQsample.c",73,5
MOVB AL,#104 ; |73|
MOV *(0:0x7029),AL ; |73|
EDIS
MOVW DP,#_Step
MOVB ACC,#160
.dwpsn "IQsample.c",77,5
MOVL @_Step,ACC ; |77|
.dwpsn "IQsample.c",78,5
MOVL @_Step+2,ACC ; |78|
MOVB ACC,#0
MOVL XAR4,#_Dlog
.dwpsn "IQsample.c",84,33
MOVB XAR5,#2 ; |84|
.dwpsn "IQsample.c",79,5
MOVL @_Step+4,ACC ; |79|
MOVB XAR6,#63
.dwpsn "IQsample.c",80,5
MOVL @_Step+6,ACC ; |80|
.dwpsn "IQsample.c",81,5
MOVL @_Step+8,ACC ; |81|
L1:
DW$L$_main$2$B:
MOVB ACC,#0
.dwpsn "IQsample.c",87,9
MOVB XAR0,#128 ; |87|
.dwpsn "IQsample.c",86,9
MOVL *+XAR4[0],ACC ; |86|
.dwpsn "IQsample.c",87,9
MOVL *+XAR4[AR0],ACC ; |87|
.dwpsn "IQsample.c",88,9
MOVL XAR0,#384 ; |88|
MOVL *+XAR4[AR0],ACC ; |88|
.dwpsn "IQsample.c",89,9
MOVL XAR0,#256 ; |89|
MOVL *+XAR4[AR0],ACC ; |89|
.dwpsn "IQsample.c",90,9
MOVL XAR0,#512 ; |90|
MOVL *+XAR4[AR0],ACC ; |90|
.dwpsn "IQsample.c",84,33
MOVL ACC,XAR4 ; |84|
ADDU ACC,AR5 ; |84|
MOVL XAR4,ACC ; |84|
.dwpsn "IQsample.c",84,14
BANZ L1,AR6-- ; |84|
; branchcc occurs ; |84|
DW$L$_main$2$E:
.dwpsn "IQsample.c",94,2
MOVL XAR4,#321 ; |94|
MOVW DP,#_finput
SPM #0
MOV ACC,#321 << 0
MOVL @_finput,XAR4 ; |94|
.dwpsn "IQsample.c",96,2
LCR #__IQ9sin ; |96|
; call occurs [#__IQ9sin] ; |96|
MOVW DP,#_foutput
.dwpsn "IQsample.c",98,2
MOVL XAR4,#804 ; |98|
MOVL @_finput,XAR4 ; |98|
.dwpsn "IQsample.c",96,2
MOVL @_foutput,ACC ; |96|
.dwpsn "IQsample.c",121,5
MOVL XAR4,#FSL1 ; |121|
LCR #_puts ; |121|
; call occurs [#_puts] ; |121|
.dwpsn "IQsample.c",122,5
MOVZ AR4,SP ; |122|
SUBB XAR4,#22 ; |122|
LCR #_gets ; |122|
; call occurs [#_gets] ; |122|
.dwpsn "IQsample.c",123,5
MOVZ AR4,SP ; |123|
SUBB XAR4,#22 ; |123|
MOVB ACC,#9
LCR #__atoIQN ; |123|
; call occurs [#__atoIQN] ; |123|
.dwpsn "IQsample.c",124,5
TEST ACC ; |124|
BF L2,EQ ; |124|
; branchcc occurs ; |124|
MOVL XAR4,ACC ; |124|
BF L3,UNC ; |124|
; branch occurs ; |124|
L2:
MOVL XAR4,#512 ; |124|
L3:
MOVW DP,#_Step+10
MOVL @_Step+10,XAR4 ; |124|
MOVL XAR4,#FSL2
LCR #_puts
; call occurs [#_puts]
.dwpsn "IQsample.c",128,5
MOVZ AR4,SP ; |128|
SUBB XAR4,#22 ; |128|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -