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

📄 main.asm

📁 电子词典的设计开发
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	CMP R1,97	// QImode compare
	JZ L58	// QImode NE
	PC=L26
L58:
	R1=[_KeycodeLED+3]	// QImode move
	CMP R1,116	// QImode compare
	JZ L59	// QImode NE
	PC=L26
L59:
	R1=[_KeycodeLED+4]	// QImode move
	CMP R1,104	// QImode compare
	JZ L60	// QImode NE
	PC=L26
L60:
	R1=[_KeycodeLED+5]	// QImode move
	CMP R1,101	// QImode compare
	JZ L61	// QImode NE
	PC=L26
L61:
	R1=[_KeycodeLED+6]	// QImode move
	CMP R1,114	// QImode compare
	JZ L62	// QImode NE
	PC=L26
L62:
.debug
	.dw '.stabn 0x44,0,100,',0,0
	.dd LM29-_ciku
	.dw 0x0d,0x0a
.code
LM29:
LBB10:
	R1=50	// QImode move
	[SP--]=R1	// QImode move
	R1=120	// QImode move
	[SP--]=R1	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC6	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	R1=1	// QImode move
	[_flag_you]=R1	// QImode move
LBE10:
L26:
.debug
	.dw '.stabn 0x44,0,102,',0,0
	.dd LM30-_ciku
	.dw 0x0d,0x0a
.code
LM30:
	pc=L14	// Indirect jump
L27:
.debug
	.dw '.stabn 0x44,0,104,',0,0
	.dd LM31-_ciku
	.dw 0x0d,0x0a
.code
LM31:
	R1=[_KeycodeLED]	// QImode move
	CMP R1,116	// QImode compare
	JZ L63	// QImode NE
	PC=L28
L63:
	R1=[_KeycodeLED+1]	// QImode move
	CMP R1,111	// QImode compare
	JZ L64	// QImode NE
	PC=L28
L64:
	R1=[_KeycodeLED+2]	// QImode move
	CMP R1,109	// QImode compare
	JZ L65	// QImode NE
	PC=L28
L65:
	R1=[_KeycodeLED+3]	// QImode move
	CMP R1,111	// QImode compare
	JZ L66	// QImode NE
	PC=L28
L66:
	R1=[_KeycodeLED+4]	// QImode move
	CMP R1,114	// QImode compare
	JZ L67	// QImode NE
	PC=L28
L67:
	R1=[_KeycodeLED+5]	// QImode move
	CMP R1,114	// QImode compare
	JZ L68	// QImode NE
	PC=L28
L68:
	R1=[_KeycodeLED+6]	// QImode move
	CMP R1,111	// QImode compare
	JZ L69	// QImode NE
	PC=L28
L69:
	R1=[_KeycodeLED+7]	// QImode move
	CMP R1,119	// QImode compare
	JZ L70	// QImode NE
	PC=L28
L70:
.debug
	.dw '.stabn 0x44,0,105,',0,0
	.dd LM32-_ciku
	.dw 0x0d,0x0a
.code
LM32:
LBB11:
	R1=50	// QImode move
	[SP--]=R1	// QImode move
	R1=120	// QImode move
	[SP--]=R1	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC7	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	R1=1	// QImode move
	[_flag_you]=R1	// QImode move
LBE11:
L28:
.debug
	.dw '.stabn 0x44,0,107,',0,0
	.dd LM33-_ciku
	.dw 0x0d,0x0a
.code
LM33:
	pc=L14	// Indirect jump
L29:
.debug
	.dw '.stabn 0x44,0,109,',0,0
	.dd LM34-_ciku
	.dw 0x0d,0x0a
.code
LM34:
	R1=[_KeycodeLED]	// QImode move
	CMP R1,121	// QImode compare
	JZ L71	// QImode NE
	PC=L30
L71:
	R1=[_KeycodeLED+1]	// QImode move
	CMP R1,101	// QImode compare
	JZ L72	// QImode NE
	PC=L30
L72:
	R1=[_KeycodeLED+2]	// QImode move
	CMP R1,115	// QImode compare
	JZ L73	// QImode NE
	PC=L30
L73:
	R1=[_KeycodeLED+3]	// QImode move
	CMP R1,116	// QImode compare
	JZ L74	// QImode NE
	PC=L30
L74:
	R1=[_KeycodeLED+4]	// QImode move
	CMP R1,101	// QImode compare
	JZ L75	// QImode NE
	PC=L30
L75:
	R1=[_KeycodeLED+5]	// QImode move
	CMP R1,114	// QImode compare
	JZ L76	// QImode NE
	PC=L30
L76:
	R1=[_KeycodeLED+6]	// QImode move
	CMP R1,100	// QImode compare
	JZ L77	// QImode NE
	PC=L30
L77:
	R1=[_KeycodeLED+7]	// QImode move
	CMP R1,97	// QImode compare
	JZ L78	// QImode NE
	PC=L30
L78:
	R1=[_KeycodeLED+8]	// QImode move
	CMP R1,121	// QImode compare
	JZ L79	// QImode NE
	PC=L30
L79:
.debug
	.dw '.stabn 0x44,0,110,',0,0
	.dd LM35-_ciku
	.dw 0x0d,0x0a
.code
LM35:
LBB12:
	R1=50	// QImode move
	[SP--]=R1	// QImode move
	R1=120	// QImode move
	[SP--]=R1	// QImode move
	R1=2	// QImode move
	[SP--]=R1	// QImode move
	R1=LC8	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	R1=1	// QImode move
	[_flag_you]=R1	// QImode move
LBE12:
L30:
.debug
	.dw '.stabn 0x44,0,112,',0,0
	.dd LM36-_ciku
	.dw 0x0d,0x0a
.code
LM36:
	pc=L14	// Indirect jump
L31:
.debug
	.dw '.stabn 0x44,0,113,',0,0
	.dd LM37-_ciku
	.dw 0x0d,0x0a
.code
LM37:
	pc=L14	// Indirect jump
L14:
.debug
	.dw '.stabn 0x44,0,116,',0,0
	.dd LM38-_ciku
	.dw 0x0d,0x0a
.code
LM38:
	R1=[_flag_you]	// QImode move
	CMP R1,0	// QImode test
	JZ L80	// QImode NE
	PC=L33
L80:
	R1=[_ret]	// QImode move
	CMP R1,0	// QImode test
	JNZ L81	// QImode EQ
	PC=L33
L81:
LBB13:
	R1=40	// QImode move
	[SP--]=R1	// QImode move
	R1=100	// QImode move
	[SP--]=R1	// QImode move
	R1=3	// QImode move
	[SP--]=R1	// QImode move
	R1=LC9	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
LBE13:
L33:
.debug
	.dw '.stabn 0x44,0,119,',0,0
	.dd LM39-_ciku
	.dw 0x0d,0x0a
.code
LM39:
LBE3:
.debug
	.dw '.stabn 0x44,0,119,',0,0
	.dd LM40-_ciku
	.dw 0x0d,0x0a
.code
LM40:
L13:

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

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB3-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB4-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE4-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB5-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE5-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB6-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE6-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB7-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE7-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB8-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE8-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB9-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE9-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB10-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE10-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB11-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE11-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB12-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE12-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB13-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE13-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE3-_ciku
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME2-_ciku
	.dw 0x0d,0x0a
.code
LME2:
.text
LC10:
	.str 'N','o',' ',' ','N','u','m','b','e','r'
	.dw 0
LC11:
	.str 'o','f',' ','t','h','e',' ','P','e','r','s','o','n'
	.dw 0
.code
.debug
	.dw '.stabs "tel_num_find:F19",36,0,0,',0,0,offset _tel_num_find,seg _tel_num_find,0x0d,0x0a
.CODE
.public _tel_num_find
_tel_num_find:	.proc
.debug
	.dw '.stabn 0x44,0,125,',0,0
	.dd LM41-_tel_num_find
	.dw 0x0d,0x0a
.code
LM41:
	// total=4, vars=4
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=4
	bp=sp+1

	R1=BP+7
	[bp+2]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,126,',0,0
	.dd LM42-_tel_num_find
	.dw 0x0d,0x0a
.code
LM42:
LBB14:
.debug
	.dw '.stabn 0x44,0,127,',0,0
	.dd LM43-_tel_num_find
	.dw 0x0d,0x0a
.code
LM43:
	R1=0	// QImode move
	[_line_find]=R1	// QImode move
L83:
	R1=[_line_find]	// QImode move
	CMP R1,[_line]	// QImode compare
	JNB L95	// QImode LTU
	PC=L86
L95:
	pc=L84	// Indirect jump
L86:
.debug
	.dw '.stabn 0x44,0,129,',0,0
	.dd LM44-_tel_num_find
	.dw 0x0d,0x0a
.code
LM44:
	R1=BP	// QImode move
	R2=BP+1
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
L87:
	R1=BP	// QImode move
	R2=BP+1
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	CMP R1,[_tel_find_name]	// QImode compare
	JNB L96	// QImode LTU
	PC=L90
L96:
	pc=L88	// Indirect jump
L90:
.debug
	.dw '.stabn 0x44,0,131,',0,0
	.dd LM45-_tel_num_find
	.dw 0x0d,0x0a
.code
LM45:
LBB15:
	R2=BP	// QImode move
	R1=BP+1
	R2=[_line_find]	// QImode move
	R3=30	// QImode move
	[bp+3]=R3	// QImode move
	R4=[bp+3]	// 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
	R2=BP	// QImode move
	R3=BP+1
	R2=_tel_find	// QImode move
	R4=R3	// QImode move
	R3=[R4]	// QImode move
	R2+=R3	// addqi3_r0r
	R3=R1	// QImode move
	R1=[R3]	// QImode move
	R4=R2	// QImode move
	CMP R1,[R4]	// QImode compare
	JNZ L97	// QImode EQ
	PC=L91
L97:
	pc=L88	// Indirect jump
L91:
.debug
	.dw '.stabn 0x44,0,132,',0,0
	.dd LM46-_tel_num_find
	.dw 0x0d,0x0a
.code
LM46:
	call _Clear_Watch_Dog	// call with return value
.debug
	.dw '.stabn 0x44,0,133,',0,0
	.dd LM47-_tel_num_find
	.dw 0x0d,0x0a
.code
LM47:
LBE15:
.debug
	.dw '.stabn 0x44,0,129,',0,0
	.dd LM48-_tel_num_find
	.dw 0x0d,0x0a
.code
LM48:
L89:
	R1=BP	// QImode move
	R2=BP+1
	R3=BP	// QImode move
	R1=BP+1
	R2=BP	// QImode move
	R3=BP+1
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=R2+1
	R2=R1	// QImode move
	[R2]=R3	// QImode move
	pc=L87	// Indirect jump
L88:
.debug
	.dw '.stabn 0x44,0,134,',0,0
	.dd LM49-_tel_num_find
	.dw 0x0d,0x0a
.code
LM49:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,[_tel_find_name]	// QImode compare
	JNB L98	// QImode LTU
	PC=L85
L98:
	R1=1	// QImode move
	[_tel_num_you]=R1	// QImode move
	pc=L84	// Indirect jump
L92:
.debug
	.dw '.stabn 0x44,0,127,',0,0
	.dd LM50-_tel_num_find
	.dw 0x0d,0x0a
.code
LM50:
L85:
	R1=[_line_find]	// QImode move
	R2=1	// QImode move
	[_line_find]=R1+R2
	pc=L83	// Indirect jump
L84:
.debug
	.dw '.stabn 0x44,0,137,',0,0
	.dd LM51-_tel_num_find
	.dw 0x0d,0x0a
.code
LM51:
	R1=[_tel_num_you]	// QImode move
	CMP R1,0	// QImode test
	JNZ L99	// QImode EQ
	PC=L93
L99:
LBB16:
	R1=BP	// QImode move
	R2=BP+1
	R4=R2	// QImode move
	R3=[R4]	// QImode move
	R1=R3+20
	[SP--]=R1	// QImode move
	R1=[_line_find]	// QImode move
	[SP--]=R1	// QImode move
	call _Play_Num0	// call with return value
	SP=SP+2
LBE16:
	pc=L94	// Indirect jump
L93:
.debug
	.dw '.stabn 0x44,0,138,',0,0
	.dd LM52-_tel_num_find
	.dw 0x0d,0x0a
.code
LM52:
LBB17:
	R1=50	// QImode move
	[SP--]=R1	// QImode move
	R1=120	// QImode move
	[SP--]=R1	// QImode move
	R1=3	// QImode move
	[SP--]=R1	// QImode move
	R1=LC10	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
	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=LC11	// QImode move
	[SP--]=R1	// QImode move
	call _FG_PutStr	// call with return value
	SP=SP+4
LBE17:
L94:
.debug
	.dw '.stabn 0x44,0,139,',0,0
	.dd LM53-_tel_num_find
	.dw 0x0d,0x0a
.code
LM53:
LBE14:
.debug
	.dw '.stabn 0x44,0,139,',0,0
	.dd LM54-_tel_num_find
	.dw 0x0d,0x0a
.code
LM54:
L82:

	sp+=4
	pop bp from [sp]
	retf
	.endp	// end of tel_num_find

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB14-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "i:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "j:4",128,0,0,1',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB15-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE15-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB16-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE16-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB17-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE17-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE14-_tel_num_find
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME3-_tel_num_find
	.dw 0x0d,0x0a
.code
LME3:
.text
LC12:
	.str 'I','n','p','u','t',' ','w','o','r','d','.','.','.','.'
	.dw 0
LC13:
	.str 'I','n','p','u','t',' ','n','a','m','e','.','.','.','.'
	.dw 0
LC14:
	.str 'E','l','e','c','t','r','o','n','i','c',' ','D','i','c','t','i','o','n','a','r','y'
	.dw 0
LC15:
	.str 'a','b','c'
	.dw 0
LC16:
	.str '1','2','3'
	.dw 0
LC17:
	.str '0'
	.dw 0
LC18:
	.str '1'
	.dw 0
LC19:
	.str '2'
	.dw 0
LC20:

⌨️ 快捷键说明

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