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

📄 main.asm

📁 LED键盘模组电路自我检测程序
💻 ASM
📖 第 1 页 / 共 2 页
字号:
	pc=L11	// Indirect jump
L12:
.debug
	.dw '.stabn 0x44,0,113,',0,0
	.dd LM38-_main
	.dw 0x0d,0x0a
.code
LM38:
	R1=[28672]	// QImode move
	R2=R1&(-256)
	[28672]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,114,',0,0
	.dd LM39-_main
	.dw 0x0d,0x0a
.code
LM39:
	call _Delay	// call with return value
.debug
	.dw '.stabn 0x44,0,115,',0,0
	.dd LM40-_main
	.dw 0x0d,0x0a
.code
LM40:
	R1=[28672]	// QImode move
	R2=R1|255
	[28672]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,116,',0,0
	.dd LM41-_main
	.dw 0x0d,0x0a
.code
LM41:
L15:
	pc=L17	// Indirect jump
	pc=L16	// Indirect jump
L17:
.debug
	.dw '.stabn 0x44,0,117,',0,0
	.dd LM42-_main
	.dw 0x0d,0x0a
.code
LM42:
	call _Delay	// call with return value
	pc=L15	// Indirect jump
L16:
.debug
	.dw '.stabn 0x44,0,118,',0,0
	.dd LM43-_main
	.dw 0x0d,0x0a
.code
LM43:
LBE2:
.debug
	.dw '.stabn 0x44,0,118,',0,0
	.dd LM44-_main
	.dw 0x0d,0x0a
.code
LM44:
L2:

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

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB2-_main
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "Loop_Numb:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "Led_Numb:1",128,0,0,1',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "Key:4",128,0,0,2',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "time:1",128,0,0,3',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "i:1",128,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB3-_main
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE3-_main
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE2-_main
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME1-_main
	.dw 0x0d,0x0a
.code
LME1:
.code
.debug
	.dw '.stabs "Delay:F1",36,0,0,',0,0,offset _Delay,seg _Delay,0x0d,0x0a
.CODE
.public _Delay
_Delay:	.proc
.debug
	.dw '.stabn 0x44,0,126,',0,0
	.dd LM45-_Delay
	.dw 0x0d,0x0a
.code
LM45:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
.debug
	.dw '.stabn 0x44,0,127,',0,0
	.dd LM46-_Delay
	.dw 0x0d,0x0a
.code
LM46:
LBB4:
	R2=0	// QImode move
	[BP]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,129,',0,0
	.dd LM47-_Delay
	.dw 0x0d,0x0a
.code
LM47:
	R2=0	// QImode move
	[BP]=R2	// QImode move
L22:
	R2=[BP]	// QImode move
	CMP R2,8191	// QImode compare
	JG L26	// QImode LE
	PC=L25
L26:
	pc=L23	// Indirect jump
L25:
.debug
	.dw '.stabn 0x44,0,130,',0,0
	.dd LM48-_Delay
	.dw 0x0d,0x0a
.code
LM48:
	R2=1	// QImode move
	[28690]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,129,',0,0
	.dd LM49-_Delay
	.dw 0x0d,0x0a
.code
LM49:
L24:
	R2=[BP]	// QImode move
	R3=R2+1
	[BP]=R3	// QImode move
	pc=L22	// Indirect jump
L23:
.debug
	.dw '.stabn 0x44,0,131,',0,0
	.dd LM50-_Delay
	.dw 0x0d,0x0a
.code
LM50:
LBE4:
.debug
	.dw '.stabn 0x44,0,131,',0,0
	.dd LM51-_Delay
	.dw 0x0d,0x0a
.code
LM51:
L21:

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

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB4-_Delay
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "DelayValue:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE4-_Delay
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME2-_Delay
	.dw 0x0d,0x0a
.code
LME2:
.code
.debug
	.dw '.stabs "Led_Disp:F1",36,0,0,',0,0,offset _Led_Disp,seg _Led_Disp,0x0d,0x0a
.CODE
.public _Led_Disp
_Led_Disp:	.proc
.debug
	.dw '.stabn 0x44,0,139,',0,0
	.dd LM52-_Led_Disp
	.dw 0x0d,0x0a
.code
LM52:
	// 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,140,',0,0
	.dd LM53-_Led_Disp
	.dw 0x0d,0x0a
.code
LM53:
	R1=64	// QImode move
	[28677]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,141,',0,0
	.dd LM54-_Led_Disp
	.dw 0x0d,0x0a
.code
LM54:
	R1=[_LedControl]	// QImode move
	R3=[BP]	// QImode move
	R2=[R3]	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __lshiu1	// call with return value
	SP=SP+2
	[28672]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,142,',0,0
	.dd LM55-_Led_Disp
	.dw 0x0d,0x0a
.code
LM55:
	call _Delay	// call with return value
.debug
	.dw '.stabn 0x44,0,144,',0,0
	.dd LM56-_Led_Disp
	.dw 0x0d,0x0a
.code
LM56:
	R1=[BP]	// QImode move
	R1=[BP]	// QImode move
	R2=R1+1
	R1=[_LedControl]	// QImode move
	R3=R2	// QImode move
	R2=[R3]	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __lshiu1	// call with return value
	SP=SP+2
	[28677]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,145,',0,0
	.dd LM57-_Led_Disp
	.dw 0x0d,0x0a
.code
LM57:
	R1=[BP]	// QImode move
	R2=[R1]	// QImode move
	R1=R2+1
	R3=_DispTbl	// QImode move
	R2=R3	// QImode move
	R2+=R1	// addqi3_r0r
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[28672]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,146,',0,0
	.dd LM58-_Led_Disp
	.dw 0x0d,0x0a
.code
LM58:
	call _Delay	// call with return value
.debug
	.dw '.stabn 0x44,0,147,',0,0
	.dd LM59-_Led_Disp
	.dw 0x0d,0x0a
.code
LM59:
.debug
	.dw '.stabn 0x44,0,147,',0,0
	.dd LM60-_Led_Disp
	.dw 0x0d,0x0a
.code
LM60:
L27:

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

.debug
	.dw '.stabs "Led:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "Loop:p4",160,0,0,5',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME3-_Led_Disp
	.dw 0x0d,0x0a
.code
LME3:
.code
.debug
	.dw '.stabs "GetKey:F4",36,0,0,',0,0,offset _GetKey,seg _GetKey,0x0d,0x0a
.CODE
.public _GetKey
_GetKey:	.proc
.debug
	.dw '.stabn 0x44,0,157,',0,0
	.dd LM61-_GetKey
	.dw 0x0d,0x0a
.code
LM61:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R2=BP+4
.debug
	.dw '.stabn 0x44,0,158,',0,0
	.dd LM62-_GetKey
	.dw 0x0d,0x0a
.code
LM62:
LBB5:
	R1=0	// QImode move
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,161,',0,0
	.dd LM63-_GetKey
	.dw 0x0d,0x0a
.code
LM63:
	R1=[28674]	// QImode move
	R3=R1&255
	[28674]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,162,',0,0
	.dd LM64-_GetKey
	.dw 0x0d,0x0a
.code
LM64:
	R1=[28675]	// QImode move
	R3=R1&255
	[28675]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,163,',0,0
	.dd LM65-_GetKey
	.dw 0x0d,0x0a
.code
LM65:
	R1=[28673]	// QImode move
	R3=R1|(-256)
	[28673]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,171,',0,0
	.dd LM66-_GetKey
	.dw 0x0d,0x0a
.code
LM66:
L29:
	R1=[BP]	// QImode move
	CMP R1,0	// QImode test
	JNZ L35	// QImode EQ
	PC=L31
L35:
	pc=L30	// Indirect jump
L31:
.debug
	.dw '.stabn 0x44,0,173,',0,0
	.dd LM67-_GetKey
	.dw 0x0d,0x0a
.code
LM67:
	R3=[28672]	// QImode move
	R1=R3&(-256)
	R3=R1^(-256)
	[BP]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,174,',0,0
	.dd LM68-_GetKey
	.dw 0x0d,0x0a
.code
LM68:
	R1=1	// QImode move
	[28690]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,175,',0,0
	.dd LM69-_GetKey
	.dw 0x0d,0x0a
.code
LM69:
	pc=L29	// Indirect jump
L30:
.debug
	.dw '.stabn 0x44,0,177,',0,0
	.dd LM70-_GetKey
	.dw 0x0d,0x0a
.code
LM70:
	R3=[28672]	// QImode move
	R1=R3&(-256)
	R3=R1^(-256)
	[BP]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,179,',0,0
	.dd LM71-_GetKey
	.dw 0x0d,0x0a
.code
LM71:
L32:
	R3=[28672]	// QImode move
	R1=R3&(-256)
	CMP R1,(-256)	// QImode compare
	JZ L36	// QImode NE
	PC=L34
L36:
	pc=L33	// Indirect jump
L34:
.debug
	.dw '.stabn 0x44,0,181,',0,0
	.dd LM72-_GetKey
	.dw 0x0d,0x0a
.code
LM72:
	R1=1	// QImode move
	[28690]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,182,',0,0
	.dd LM73-_GetKey
	.dw 0x0d,0x0a
.code
LM73:
	pc=L32	// Indirect jump
L33:
.debug
	.dw '.stabn 0x44,0,183,',0,0
	.dd LM74-_GetKey
	.dw 0x0d,0x0a
.code
LM74:
	R3=[BP]	// QImode move
	R1=R3	// QImode move
	pc=L28	// Indirect jump
.debug
	.dw '.stabn 0x44,0,184,',0,0
	.dd LM75-_GetKey
	.dw 0x0d,0x0a
.code
LM75:
LBE5:
.debug
	.dw '.stabn 0x44,0,184,',0,0
	.dd LM76-_GetKey
	.dw 0x0d,0x0a
.code
LM76:
L28:

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

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB5-_GetKey
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "KeyValue:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE5-_GetKey
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME4-_GetKey
	.dw 0x0d,0x0a
.code
LME4:
.external __lshiu1
.external __rshu1
	.end

⌨️ 快捷键说明

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