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

📄 main.asm

📁 电子词典的设计开发
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.dw 0x0d,0x0a
.code
LM100:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC46	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L144:
.debug
	.dw '.stabn 0x44,0,207,',0,0
	.dd LM101-_Play_Num
	.dw 0x0d,0x0a
.code
LM101:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC47	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L145:
.debug
	.dw '.stabn 0x44,0,208,',0,0
	.dd LM102-_Play_Num
	.dw 0x0d,0x0a
.code
LM102:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC48	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L146:
.debug
	.dw '.stabn 0x44,0,209,',0,0
	.dd LM103-_Play_Num
	.dw 0x0d,0x0a
.code
LM103:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC49	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L147:
.debug
	.dw '.stabn 0x44,0,210,',0,0
	.dd LM104-_Play_Num
	.dw 0x0d,0x0a
.code
LM104:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC50	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L148:
.debug
	.dw '.stabn 0x44,0,211,',0,0
	.dd LM105-_Play_Num
	.dw 0x0d,0x0a
.code
LM105:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC51	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L149:
.debug
	.dw '.stabn 0x44,0,212,',0,0
	.dd LM106-_Play_Num
	.dw 0x0d,0x0a
.code
LM106:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC52	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L150:
.debug
	.dw '.stabn 0x44,0,213,',0,0
	.dd LM107-_Play_Num
	.dw 0x0d,0x0a
.code
LM107:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=10	// QImode move
	mr=R1*R2	// r3=R1*R2 16bit=16bit*16bit
	R2=60	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	R2=R1	// QImode move
	R1=R2 lsl 3
	R3=120	// QImode move
	R2=R3	// QImode move
	R2-=R1
	[SP--]=R2	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC53	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L111	// Indirect jump
L152:
L113:
.debug
	.dw '.stabn 0x44,0,171,',0,0
	.dd LM108-_Play_Num
	.dw 0x0d,0x0a
.code
LM108:
L111:
	R1=BP	// QImode move
	R2=BP+2
	R3=BP	// QImode move
	R1=BP+2
	R2=BP	// QImode move
	R3=BP+2
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=R2+1
	R2=R1	// QImode move
	[R2]=R3	// QImode move
	pc=L109	// Indirect jump
L110:
.debug
	.dw '.stabn 0x44,0,216,',0,0
	.dd LM109-_Play_Num
	.dw 0x0d,0x0a
.code
LM109:
LBE20:
L106:
.debug
	.dw '.stabn 0x44,0,217,',0,0
	.dd LM110-_Play_Num
	.dw 0x0d,0x0a
.code
LM110:
LBE18:
.debug
	.dw '.stabn 0x44,0,217,',0,0
	.dd LM111-_Play_Num
	.dw 0x0d,0x0a
.code
LM111:
L100:

	sp+=6
	pop bp from [sp]
	retf
	.endp	// end of Play_Num

.debug
	.dw '.stabs "a:p21=*4",160,0,0,9',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "num:p4",160,0,0,10',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB18-_Play_Num
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "i:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "k:4",128,0,0,1',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "j:4",128,0,0,2',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB19-_Play_Num
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE19-_Play_Num
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB20-_Play_Num
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE20-_Play_Num
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE18-_Play_Num
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME4-_Play_Num
	.dw 0x0d,0x0a
.code
LME4:
.text
LC54:
	.str 'I','n','p','u','t',' ','n','a','m','e',' ','A','n','d',' ','N','u','m','.','.','.','.'
	.dw 0
.code
.debug
	.dw '.stabs "Play_Num0:F19",36,0,0,',0,0,offset _Play_Num0,seg _Play_Num0,0x0d,0x0a
.CODE
.public _Play_Num0
_Play_Num0:	.proc
.debug
	.dw '.stabn 0x44,0,223,',0,0
	.dd LM112-_Play_Num0
	.dw 0x0d,0x0a
.code
LM112:
	// total=6, vars=6
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=6
	bp=sp+1

	R1=BP+9
	[bp+3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,224,',0,0
	.dd LM113-_Play_Num0
	.dw 0x0d,0x0a
.code
LM113:
LBB21:
.debug
	.dw '.stabn 0x44,0,225,',0,0
	.dd LM114-_Play_Num0
	.dw 0x0d,0x0a
.code
LM114:
	call _delay	// call without return value
.debug
	.dw '.stabn 0x44,0,226,',0,0
	.dd LM115-_Play_Num0
	.dw 0x0d,0x0a
.code
LM115:
	R1=0	// QImode move
	[SP--]=R1	// QImode move
	call _FG_ClearScreen	// call with return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,228,',0,0
	.dd LM116-_Play_Num0
	.dw 0x0d,0x0a
.code
LM116:
	R1=[bp+3]	// QImode move
	R3=[bp+3]	// QImode move
	R2=R3+1
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	CMP R1,0	// QImode test
	JZ L208	// QImode NE
	PC=L160
L208:
	R1=[_flag_find_tel]	// QImode move
	CMP R1,0	// QImode test
	JNZ L209	// QImode EQ
	PC=L160
L209:
	R1=40	// QImode move
	[SP--]=R1	// QImode move
	R1=120	// QImode move
	[SP--]=R1	// QImode move
	R1=3	// QImode move
	[SP--]=R1	// QImode move
	R1=LC54	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L161	// Indirect jump
L160:
.debug
	.dw '.stabn 0x44,0,231,',0,0
	.dd LM117-_Play_Num0
	.dw 0x0d,0x0a
.code
LM117:
	R1=0	// QImode move
	[SP--]=R1	// QImode move
	call _FG_ClearScreen	// call with return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,232,',0,0
	.dd LM118-_Play_Num0
	.dw 0x0d,0x0a
.code
LM118:
	R1=[_flag_change]	// QImode move
	CMP R1,0	// QImode test
	JZ L210	// QImode NE
	PC=L162
L210:
	R1=20	// QImode move
	[SP--]=R1	// QImode move
	R1=25	// QImode move
	[SP--]=R1	// QImode move
	R1=3	// QImode move
	[SP--]=R1	// QImode move
	R1=LC15	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	pc=L163	// Indirect jump
L162:
.debug
	.dw '.stabn 0x44,0,233,',0,0
	.dd LM119-_Play_Num0
	.dw 0x0d,0x0a
.code
LM119:
	R1=20	// QImode move
	[SP--]=R1	// QImode move
	R1=25	// QImode move
	[SP--]=R1	// QImode move
	R1=3	// QImode move
	[SP--]=R1	// QImode move
	R1=LC16	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
L163:
.debug
	.dw '.stabn 0x44,0,234,',0,0
	.dd LM120-_Play_Num0
	.dw 0x0d,0x0a
.code
LM120:
	R1=BP	// QImode move
	R2=BP+2
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
L164:
	R2=BP	// QImode move
	R1=BP+2
	R2=[bp+3]	// QImode move
	R4=[bp+3]	// QImode move
	R3=R4+1
	R2=R1	// QImode move
	R1=[R2]	// QImode move
	R4=R3	// QImode move
	CMP R1,[R4]	// QImode compare
	JNB L211	// QImode LTU
	PC=L167
L211:
	pc=L161	// Indirect jump
L167:
.debug
	.dw '.stabn 0x44,0,236,',0,0
	.dd LM121-_Play_Num0
	.dw 0x0d,0x0a
.code
LM121:
	R1=BP	// QImode move
	R1=BP+1
	[bp+4]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=14	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __divu1	// call with return value
	SP=SP+2
	R4=[bp+4]	// QImode move
	[R4]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,237,',0,0
	.dd LM122-_Play_Num0
	.dw 0x0d,0x0a
.code
LM122:
	R2=BP	// QImode move
	R1=BP+2
	R2=BP	// QImode move
	R3=BP+1
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=14	// QImode move
	[bp+5]=R3	// QImode move
	R4=[bp+5]	// QImode move
	mr=R2*R4	// r3=R2*R4 16bit=16bit*16bit
	R4=R1	// QImode move
	R2=[R4]	// QImode move
	R1=R2	// QImode move
	R1-=R3
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,238,',0,0
	.dd LM123-_Play_Num0
	.dw 0x0d,0x0a
.code
LM123:
	R2=BP	// QImode move
	R1=BP+2
	R3=[bp+3]	// QImode move
	R2=[R3]	// QImode move
	R4=30	// QImode move
	[bp+5]=R4	// QImode move
	R4=[bp+5]	// QImode move
	mr=R2*R4	// r3=R2*R4 16bit=16bit*16bit
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2+=[R3]	// addqi3_r0R
	R3=_telephone	// QImode move
	R1=R3	// QImode move
	R1+=R2	// addqi3_r0r
	R4=R1	// QImode move
	R2=[R4]	// QImode move
	CMP R2,122	// QImode compare
	JNA L212	// QImode GTU
	PC=L166
L212:
	R2=R1	// QImode move
	R1=[R2]	// QImode move
	R2=R1	// QImode move
	R1=R2	// QImode move
	R1=R1+L206
	R3=R1	// QImode move
	R2=[R3]	// QImode move
	pc=R2	// tablejump
.text
L206:
	.dw L169
	.dw L170
	.dw L171
	.dw L172
	.dw L173
	.dw L174
	.dw L175
	.dw L176
	.dw L177
	.dw L178
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L179
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L166
	.dw L180
	.dw L181
	.dw L182
	.dw L183
	.dw L184
	.dw L185
	.dw L186
	.dw L187
	.dw L188
	.dw L189
	.dw L190
	.dw L191
	.dw L192
	.dw L193
	.dw L194
	.dw L195
	.dw L196
	.dw L197
	.dw L198
	.dw L199
	.dw L200
	.dw L201
	.dw L202
	.dw L203
	.dw L204
	.dw L205
.code
.de

⌨️ 快捷键说明

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