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

📄 main.asm

📁 该程序基于凌阳单片机做的无线温度遥测系统
💻 ASM
📖 第 1 页 / 共 4 页
字号:
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,228,',0,0
	.dd LM129-_main
	.dw 0x0d,0x0a
.code
LM129:
	R1=[28672]	// QImode move
	R2=R1&(-8)
	[28672]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,229,',0,0
	.dd LM130-_main
	.dw 0x0d,0x0a
.code
LM130:
	R1=1	// QImode move
	[28690]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,230,',0,0
	.dd LM131-_main
	.dw 0x0d,0x0a
.code
LM131:
	pc=L59	// Indirect jump
L60:
.debug
	.dw '.stabn 0x44,0,234,',0,0
	.dd LM132-_main
	.dw 0x0d,0x0a
.code
LM132:
L72:
	R1=BP	// QImode move
	R2=BP+11
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,1	// QImode compare
	NSJZ L74	//QImode EQ
	pc=L73	// Indirect jump
L74:
.debug
	.dw '.stabn 0x44,0,236,',0,0
	.dd LM133-_main
	.dw 0x0d,0x0a
.code
LM133:
	call _Read_Temp	// call without return value
.debug
	.dw '.stabn 0x44,0,237,',0,0
	.dd LM134-_main
	.dw 0x0d,0x0a
.code
LM134:
	R1=BP	// QImode move
	R2=BP+2
	R4=[_Data+1]	// QImode move
	R1=R4&7
	R4=R2	// QImode move
	[R4]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,238,',0,0
	.dd LM135-_main
	.dw 0x0d,0x0a
.code
LM135:
	R1=BP	// QImode move
	R2=BP+3
	R1=[_Data]	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,239,',0,0
	.dd LM136-_main
	.dw 0x0d,0x0a
.code
LM136:
	R1=BP	// QImode move
	R2=BP+7
	R4=[_Data+1]	// QImode move
	R1=R4&7
	R4=R2	// QImode move
	[R4]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,240,',0,0
	.dd LM137-_main
	.dw 0x0d,0x0a
.code
LM137:
	R1=BP	// QImode move
	R2=BP+8
	R1=[_Data]	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,241,',0,0
	.dd LM138-_main
	.dw 0x0d,0x0a
.code
LM138:
	R2=BP	// QImode move
	R1=BP+10
	R2=[_Data+1]	// QImode move
	R4=256	// QImode move
	[bp+22]=R4	// QImode move
	R4=[bp+22]	// QImode move
	mr=R2*R4	// r3=R2*R4 16bit=16bit*16bit
	R2=R3	// QImode move
	R2 = R2 + [_Data]	//addqi3
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,242,',0,0
	.dd LM139-_main
	.dw 0x0d,0x0a
.code
LM139:
	R1=BP	// QImode move
	R4=BP+10
	[bp+21]=R4	// QImode move
	R1=BP	// QImode move
	R2=BP+10
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	call __cvi1f2	// call with return value
	SP = SP + 1	//SP
	R3=0	// HFmode immediate to register move
	R4=16160
	push R3,R4 to [sp]	// pushhf
	push R1,R2 to [sp]	// pushhf
	call __mulf2	// call with return value
	SP = SP + 4	//SP
	push R1,R2 to [sp]	// pushhf
	call __cvf2i1	// call with return value
	SP = SP + 2	//SP
	R4=[bp+21]	// QImode move
	[R4]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,245,',0,0
	.dd LM140-_main
	.dw 0x0d,0x0a
.code
LM140:
	R1=BP	// QImode move
	R2=BP+17
	R1=[28672]	// QImode move
	R4=R1&7
	R3=R2	// QImode move
	[R3]=R4	// QImode move
.debug
	.dw '.stabn 0x44,0,247,',0,0
	.dd LM141-_main
	.dw 0x0d,0x0a
.code
LM141:
	R1=BP	// QImode move
	R2=BP+17
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,2	// QImode compare
	NSJZ L77	//QImode EQ
	CMP R1,2	// QImode compare
	NSJG L81	//QImode GT
	CMP R1,1	// QImode compare
	NSJZ L76	//QImode EQ
	pc=L79	// Indirect jump
L81:
	CMP R1,4	// QImode compare
	NSJZ L78	//QImode EQ
	pc=L79	// Indirect jump
.debug
	.dw '.stabn 0x44,0,249,',0,0
	.dd LM142-_main
	.dw 0x0d,0x0a
.code
LM142:
L76:
	R2=BP	// QImode move
	R1=BP+2
	R2=BP	// QImode move
	R3=BP+2
	R4=R3	// QImode move
	R4=[R4]	// QImode move
	R2=R4|128
	R4=R1	// QImode move
	[R4]=R2	// QImode move
	R1=[28672]	// QImode move
	R2=R1|1024
	[28672]=R2	// QImode move
	pc=L75	// Indirect jump
L77:
.debug
	.dw '.stabn 0x44,0,250,',0,0
	.dd LM143-_main
	.dw 0x0d,0x0a
.code
LM143:
	R2=BP	// QImode move
	R1=BP+2
	R2=BP	// QImode move
	R3=BP+2
	R2=R3	// QImode move
	R2=[R2]	// QImode move
	R4=R2|64
	R2=R1	// QImode move
	[R2]=R4	// QImode move
	R1=[28672]	// QImode move
	R2=R1|512
	[28672]=R2	// QImode move
	pc=L75	// Indirect jump
L78:
.debug
	.dw '.stabn 0x44,0,251,',0,0
	.dd LM144-_main
	.dw 0x0d,0x0a
.code
LM144:
	R2=BP	// QImode move
	R1=BP+2
	R2=BP	// QImode move
	R3=BP+2
	R4=R3	// QImode move
	R4=[R4]	// QImode move
	R2=R4|32
	R4=R1	// QImode move
	[R4]=R2	// QImode move
	R1=[28672]	// QImode move
	R2=R1|256
	[28672]=R2	// QImode move
	pc=L75	// Indirect jump
L79:
.debug
	.dw '.stabn 0x44,0,252,',0,0
	.dd LM145-_main
	.dw 0x0d,0x0a
.code
LM145:
	pc=L75	// Indirect jump
L75:
.debug
	.dw '.stabn 0x44,0,256,',0,0
	.dd LM146-_main
	.dw 0x0d,0x0a
.code
LM146:
	R2=BP	// QImode move
	R1=BP+10
	R2=BP	// QImode move
	R3=BP+18
	R2=R1	// QImode move
	R1=[R2]	// QImode move
	R4=R3	// QImode move
	CMP R1,[R4]	// QImode compare
	NSJNG L82	//QImode LE
.debug
	.dw '.stabn 0x44,0,258,',0,0
	.dd LM147-_main
	.dw 0x0d,0x0a
.code
LM147:
	R2=BP	// QImode move
	R1=BP+2
	R2=BP	// QImode move
	R3=BP+2
	R2=R3	// QImode move
	R2=[R2]	// QImode move
	R4=R2|16
	R2=R1	// QImode move
	[R2]=R4	// QImode move
L82:
.debug
	.dw '.stabn 0x44,0,263,',0,0
	.dd LM148-_main
	.dw 0x0d,0x0a
.code
LM148:
L83:
	R1=BP	// QImode move
	R2=BP+13
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,9	// QImode compare
	NSJNG L85	//QImode LE
	pc=L84	// Indirect jump
L85:
.debug
	.dw '.stabn 0x44,0,265,',0,0
	.dd LM149-_main
	.dw 0x0d,0x0a
.code
LM149:
L86:
	R2=[28706]	// QImode move
	R1=R2&64
	CMP R1,0	// QImode test
	NSJNZ L88	//QImode NE
	pc=L87	// Indirect jump
L88:
.debug
	.dw '.stabn 0x44,0,267,',0,0
	.dd LM150-_main
	.dw 0x0d,0x0a
.code
LM150:
	R1=BP	// QImode move
	R2=BP+13
	R4=R2	// QImode move
	R3=[R4]	// QImode move
	R1=BP	// QImode move
	R1 = R1 + R3	//addqi3
	R3=R1	// QImode move
	R2=[R3]	// QImode move
	[28707]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,268,',0,0
	.dd LM151-_main
	.dw 0x0d,0x0a
.code
LM151:
	R1=BP	// QImode move
	R2=BP+13
	R3=BP	// QImode move
	R1=BP+13
	R2=BP	// QImode move
	R3=BP+13
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=R2+1
	R2=R1	// QImode move
	[R2]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,269,',0,0
	.dd LM152-_main
	.dw 0x0d,0x0a
.code
LM152:
	R1=BP	// QImode move
	R2=BP+13
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,10	// QImode compare
	NSJNG L89	//QImode LE
.debug
	.dw '.stabn 0x44,0,270,',0,0
	.dd LM153-_main
	.dw 0x0d,0x0a
.code
LM153:
	pc=L87	// Indirect jump
L89:
.debug
	.dw '.stabn 0x44,0,271,',0,0
	.dd LM154-_main
	.dw 0x0d,0x0a
.code
LM154:
	pc=L86	// Indirect jump
L87:
.debug
	.dw '.stabn 0x44,0,272,',0,0
	.dd LM155-_main
	.dw 0x0d,0x0a
.code
LM155:
	pc=L83	// Indirect jump
L84:
.debug
	.dw '.stabn 0x44,0,273,',0,0
	.dd LM156-_main
	.dw 0x0d,0x0a
.code
LM156:
	R1=BP	// QImode move
	R2=BP+13
	R1=0	// QImode move
	R4=R2	// QImode move
	[R4]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,275,',0,0
	.dd LM157-_main
	.dw 0x0d,0x0a
.code
LM157:
	R1=BP	// QImode move
	R2=BP+10
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	call _xianshi	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,276,',0,0
	.dd LM158-_main
	.dw 0x0d,0x0a
.code
LM158:
	R1=1600	// QImode move
	[SP--]=R1	// QImode move
	call _delay	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,277,',0,0
	.dd LM159-_main
	.dw 0x0d,0x0a
.code
LM159:
	R1=[28672]	// QImode move
	R2=R1&(-1800)
	[28672]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,278,',0,0
	.dd LM160-_main
	.dw 0x0d,0x0a
.code
LM160:
	R1=1	// QImode move
	[28690]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,279,',0,0
	.dd LM161-_main
	.dw 0x0d,0x0a
.code
LM161:
	pc=L72	// Indirect jump
L73:
.debug
	.dw '.stabn 0x44,0,281,',0,0
	.dd LM162-_main
	.dw 0x0d,0x0a
.code
LM162:
	pc=L56	// Indirect jump
L57:
.debug
	.dw '.stabn 0x44,0,288,',0,0
	.dd LM163-_main
	.dw 0x0d,0x0a
.code
LM163:
LBE5:
.debug
	.dw '.stabn 0x44,0,288,',0,0
	.dd LM164-_main
	.dw 0x0d,0x0a
.code
LM164:
L26:

	sp+=24
	pop bp from [sp]
	retf
	.endp	// end of main

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB5-_main
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "shuju:24=ar1;0;9;1",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "shuchu:1",128,0,0,10',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "biaozhi:1",128,0,0,11',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "i:1",128,0,0,12',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "number:1",128,0,0,13',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "yuyin:1",128,0,0,14',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "data:25=ar1;0;1;1",128,0,0,15',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "n:1",128,0,0,17',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "out:1",128,0,0,18',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE5-_main
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME5-_main
	.dw 0x0d,0x0a
.code
LME5:
.code
.debug
	.dw '.stabs "PlaySnd_Auto:F19",36,0,0,',0,0,offset _PlaySnd_Auto,seg _PlaySnd_Auto,0x0d,0x0a
.CODE
.public _PlaySnd_Auto
_PlaySnd_Auto:	.proc
.debug
	.dw '.stabn 0x44,0,302,',0,0
	.dd LM165-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM165:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,303,',0,0
	.dd LM166-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM166:
	R1=1	// QImode move
	[SP--]=R1	// QImode move
	call _SACM_A2000_Initial	// call with return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,304,',0,0
	.dd LM167-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM167:
	R1=3	// QImode move
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	[SP--]=R1	// QImode move
	call _SACM_A2000_Play	// call without return value
	SP = SP + 3	//SP
.debug
	.dw '.stabn 0x44,0,305,',0,0
	.dd LM168-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM168:
L125:
	call _SACM_A2000_Status	// call with return value
	R2=R1&1
	CMP R2,0	// QImode test
	NSJNZ L127	//QImode NE
	pc=L126	// Indirect jump
L127:
.debug
	.dw '.stabn 0x44,0,307,',0,0
	.dd LM169-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM169:
	call _SACM_A2000_ServiceLoop	// call without return value
.debug
	.dw '.stabn 0x44,0,308,',0,0
	.dd LM170-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM170:
	R1=1	// QImode move
	[28690]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,309,',0,0
	.dd LM171-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM171:
	pc=L125	// Indirect jump
L126:
.debug
	.dw '.stabn 0x44,0,310,',0,0
	.dd LM172-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM172:
	call _SACM_A2000_Stop	// call without return value
.debug
	.dw '.stabn 0x44,0,311,',0,0
	.dd LM173-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM173:
.debug
	.dw '.stabn 0x44,0,311,',0,0
	.dd LM174-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LM174:
L124:

	sp+=1
	pop bp from [sp]
	retf
	.endp	// end of PlaySnd_Auto

.debug
	.dw '.stabs "uiSndIndex:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "uiDAC_Channel:p4",160,0,0,5',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME6-_PlaySnd_Auto
	.dw 0x0d,0x0a
.code
LME6:
.iram
.public _Data
_Data:
	.dw 8 dup(0)
.external _SACM_A2000_Stop
.external _SACM_A2000_ServiceLoop
.external _SACM_A2000_Status
.external _SACM_A2000_Play
.external _SACM_A2000_Initial
.external _Read_Temp
.external __cvf2i1
.external __mulf2
.external __cvi1f2
.external __modi1
.external __divi1
	.end

⌨️ 快捷键说明

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