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

📄 strings.asm

📁 TC35i收发短信的源代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	mov	[hl+1],a	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; i 					;[INF] 1, 4
	br	$?L0003						;[INF] 2, 6
?L0004:
; line    12
$DGL	0,8
??ef_memcpy:
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	hl						;[INF] 1, 4
	ret							;[INF] 1, 6
??ee_memcpy:
; line    15
_memset:
$DGL	1,28
	push	hl						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	movw	ax,sp						;[INF] 2, 8
	movw	hl,ax						;[INF] 1, 4
??bf_memset:
; line    18
$DGL	0,4
	mov	a,#00H	; 0 					;[INF] 2, 4
	mov	[hl],a	; i 					;[INF] 1, 4
	mov	[hl+1],a	; i 				;[INF] 2, 8
?L0009:
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	cmp	a,[hl+11]	; len 				;[INF] 2, 8
	bnz	$?L0012						;[INF] 2, 6
	mov	a,[hl]	; i 					;[INF] 1, 4
	cmp	a,[hl+10]	; len 				;[INF] 2, 8
?L0012:
	bnc	$?L0010						;[INF] 2, 6
; line    19
$DGL	0,5
??bb00_memset:
; line    20
$DGL	0,6
	mov	a,[hl]	; i 					;[INF] 1, 4
	add	a,[hl+2]	; src 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	addc	a,[hl+3]	; src 				;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[hl+8]	; ch 				;[INF] 2, 8
	mov	[de],a						;[INF] 1, 4
??eb00_memset:
; line    21
$DGL	0,7
	mov	a,[hl]	; i 					;[INF] 1, 4
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	incw	ax						;[INF] 1, 4
	mov	[hl+1],a	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; i 					;[INF] 1, 4
	br	$?L0009						;[INF] 2, 6
?L0010:
; line    22
$DGL	0,8
??ef_memset:
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	hl						;[INF] 1, 4
	ret							;[INF] 1, 6
??ee_memset:
; line    26
_memcmp:
$DGL	1,42
	push	hl						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	movw	ax,sp						;[INF] 2, 8
	movw	hl,ax						;[INF] 1, 4
??bf_memcmp:
; line    29
$DGL	0,4
	mov	a,[hl+10]	; len 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+11]	; len 				;[INF] 2, 8
	cmpw	ax,#01H	; 1 					;[INF] 3, 6
	bnc	$?L0015						;[INF] 2, 6
	movw	bc,#0FFFFH	; -1 				;[INF] 3, 6
	br	$?L0014						;[INF] 2, 6
?L0015:
; line    31
$DGL	0,6
	mov	a,#00H	; 0 					;[INF] 2, 4
	mov	[hl],a	; i 					;[INF] 1, 4
	mov	[hl+1],a	; i 				;[INF] 2, 8
?L0017:
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	cmp	a,[hl+11]	; len 				;[INF] 2, 8
	bnz	$?L0020						;[INF] 2, 6
	mov	a,[hl]	; i 					;[INF] 1, 4
	cmp	a,[hl+10]	; len 				;[INF] 2, 8
?L0020:
	bnc	$?L0018						;[INF] 2, 6
; line    32
$DGL	0,7
??bb00_memcmp:
; line    33
$DGL	0,8
	mov	a,[hl]	; i 					;[INF] 1, 4
	add	a,[hl+2]	; src 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	addc	a,[hl+3]	; src 				;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	mov	c,a						;[INF] 1, 2
	mov	a,[hl]	; i 					;[INF] 1, 4
	add	a,[hl+8]	; dest 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	addc	a,[hl+9]	; dest 				;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	c,a						;[INF] 2, 4
	bz	$?L0021						;[INF] 2, 6
	movw	bc,#01H	; 1 					;[INF] 3, 6
	br	$?L0014						;[INF] 2, 6
?L0021:
??eb00_memcmp:
; line    34
$DGL	0,9
	mov	a,[hl]	; i 					;[INF] 1, 4
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	incw	ax						;[INF] 1, 4
	mov	[hl+1],a	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; i 					;[INF] 1, 4
	br	$?L0017						;[INF] 2, 6
?L0018:
; line    36
$DGL	0,11
	movw	bc,#00H	; 0 					;[INF] 3, 6
?L0014:
; line    37
$DGL	0,12
??ef_memcmp:
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	hl						;[INF] 1, 4
	ret							;[INF] 1, 6
??ee_memcmp:
; line    40
_strlen:
$DGL	1,56
	push	hl						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	movw	ax,sp						;[INF] 2, 8
	movw	hl,ax						;[INF] 1, 4
??bf_strlen:
; line    43
$DGL	0,4
	mov	a,#00H	; 0 					;[INF] 2, 4
	mov	[hl],a	; i 					;[INF] 1, 4
	mov	[hl+1],a	; i 				;[INF] 2, 8
; line    44
$DGL	0,5
?L0025:
	mov	a,[hl]	; i 					;[INF] 1, 4
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	incw	ax						;[INF] 1, 4
	mov	[hl+1],a	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; i 					;[INF] 1, 4
	xch	a,x						;[INF] 1, 2
	decw	ax						;[INF] 1, 4
	xch	a,x						;[INF] 1, 2
	add	a,[hl+2]	; src 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	addc	a,[hl+3]	; src 				;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	a,#00H	; 0 					;[INF] 2, 4
	bnz	$?L0025						;[INF] 2, 6
; line    46
$DGL	0,7
	mov	a,[hl]	; i 					;[INF] 1, 4
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; i 				;[INF] 2, 8
	decw	ax						;[INF] 1, 4
	movw	bc,ax						;[INF] 1, 4
; line    47
$DGL	0,8
??ef_strlen:
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	hl						;[INF] 1, 4
	ret							;[INF] 1, 6
??ee_strlen:
; line    51
_strpos:
$DGL	1,64
	push	hl						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	movw	ax,sp						;[INF] 2, 8
	movw	hl,ax						;[INF] 1, 4
??bf_strpos:
; line    54
$DGL	0,4
	mov	a,[hl+4]	; src 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+5]	; src 				;[INF] 2, 8
	call	!_strlen					;[INF] 3, 7
	movw	ax,bc						;[INF] 1, 4
	mov	[hl+1],a	; len 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; len 					;[INF] 1, 4
; line    56
$DGL	0,6
	xch	a,x						;[INF] 1, 2
	cmpw	ax,#01H	; 1 					;[INF] 3, 6
	bnc	$?L0029						;[INF] 2, 6
	movw	bc,#0FFFFH	; -1 				;[INF] 3, 6
	br	$?L0028						;[INF] 2, 6
?L0029:
; line    58
$DGL	0,8
	mov	a,[hl]	; len 					;[INF] 1, 4
	sub	a,[hl+10]	; pos 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; len 				;[INF] 2, 8
	subc	a,[hl+11]	; pos 				;[INF] 2, 8
	mov	[hl+1],a	; len 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; len 					;[INF] 1, 4
; line    60
$DGL	0,10
	mov	a,#00H	; 0 					;[INF] 2, 4
	mov	[hl+2],a	; i 				;[INF] 2, 8
	mov	[hl+3],a	; i 				;[INF] 2, 8
; line    61
$DGL	0,11
?L0031:
	mov	a,[hl+2]	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+3]	; i 				;[INF] 2, 8
	incw	ax						;[INF] 1, 4
	mov	[hl+3],a	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl+2],a	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	decw	ax						;[INF] 1, 4
	cmp	a,[hl+1]	; len 				;[INF] 2, 8
	bnz	$?L0033						;[INF] 2, 6
	xch	a,x						;[INF] 1, 2
	cmp	a,[hl]	; len 					;[INF] 1, 4
?L0033:
	bnc	$?L0032						;[INF] 2, 6
; line    62
$DGL	0,12
??bb00_strpos:
; line    63
$DGL	0,13
	mov	a,[hl+10]	; pos 				;[INF] 2, 8
	add	a,[hl+2]	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+11]	; pos 				;[INF] 2, 8
	addc	a,[hl+3]	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	add	a,[hl+4]	; src 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	addc	a,[hl+5]	; src 				;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	a,[hl+12]	; ch 				;[INF] 2, 8
	bnz	$?L0031						;[INF] 2, 6
	mov	a,[hl+10]	; pos 				;[INF] 2, 8
	add	a,[hl+2]	; i 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+11]	; pos 				;[INF] 2, 8
	addc	a,[hl+3]	; i 				;[INF] 2, 8
	movw	bc,ax						;[INF] 1, 4
	br	$?L0028						;[INF] 2, 6
??eb00_strpos:
?L0032:
; line    65
$DGL	0,15
	movw	bc,#0FFFFH	; -1 				;[INF] 3, 6
?L0028:
; line    66
$DGL	0,16
??ef_strpos:
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	hl						;[INF] 1, 4
	ret							;[INF] 1, 6
??ee_strpos:
; line    69
_StrFind:
$DGL	1,79
	push	hl						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	movw	ax,sp						;[INF] 2, 8
	movw	hl,ax						;[INF] 1, 4
??bf_StrFind:
; line    70
$DGL	0,2
	mov	a,#00H	; 0 					;[INF] 2, 4
	mov	[hl+2],a	; n 				;[INF] 2, 8
	mov	[hl+3],a	; n 				;[INF] 2, 8
; line    71
$DGL	0,3
?L0038:
	mov	a,[hl+4]	; szDest 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+5]	; szDest 			;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	a,#00H	; 0 					;[INF] 2, 4
	bz	$?L0039						;[INF] 2, 6
; line    72
$DGL	0,4
??bb00_StrFind:
; line    73
$DGL	0,5
	mov	a,[hl+4]	; szDest 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+5]	; szDest 			;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	mov	c,a						;[INF] 1, 2
	mov	a,[hl+10]	; szFind 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+11]	; szFind 			;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	c,a						;[INF] 2, 4
	bnz	$?L0046						;[INF] 2, 6
; line    74
$DGL	0,6
??bb01_StrFind:
; line    75
$DGL	0,7
	movw	ax,#01H	; 1 					;[INF] 3, 6
	mov	[hl+1],a	; k 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; k 					;[INF] 1, 4
; line    76
$DGL	0,8
?L0043:
	mov	a,[hl]	; k 					;[INF] 1, 4
	add	a,[hl+10]	; szFind 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; k 				;[INF] 2, 8
	addc	a,[hl+11]	; szFind 			;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	a,#00H	; 0 					;[INF] 2, 4
	bz	$?L0044						;[INF] 2, 6
	mov	a,[hl]	; k 					;[INF] 1, 4
	add	a,[hl+10]	; szFind 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; k 				;[INF] 2, 8
	addc	a,[hl+11]	; szFind 			;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	mov	c,a						;[INF] 1, 2
	mov	a,[hl]	; k 					;[INF] 1, 4
	add	a,[hl+4]	; szDest 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; k 				;[INF] 2, 8
	addc	a,[hl+5]	; szDest 			;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	c,a						;[INF] 2, 4
	bnz	$?L0044						;[INF] 2, 6
; line    77
$DGL	0,9
	mov	a,[hl]	; k 					;[INF] 1, 4
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; k 				;[INF] 2, 8
	incw	ax						;[INF] 1, 4
	mov	[hl+1],a	; k 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl],a	; k 					;[INF] 1, 4
	br	$?L0043						;[INF] 2, 6
?L0044:
; line    78
$DGL	0,10
	mov	a,[hl]	; k 					;[INF] 1, 4
	add	a,[hl+10]	; szFind 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+1]	; k 				;[INF] 2, 8
	addc	a,[hl+11]	; szFind 			;[INF] 2, 8
	movw	de,ax						;[INF] 1, 4
	mov	a,[de]						;[INF] 1, 4
	cmp	a,#00H	; 0 					;[INF] 2, 4
	bnz	$?L0046						;[INF] 2, 6
	mov	a,[hl+2]	; n 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+3]	; n 				;[INF] 2, 8
	movw	bc,ax						;[INF] 1, 4
	br	$?L0037						;[INF] 2, 6
?L0046:
??eb01_StrFind:
??eb00_StrFind:
; line    80
$DGL	0,12
	mov	a,[hl+4]	; szDest 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+5]	; szDest 			;[INF] 2, 8
	incw	ax						;[INF] 1, 4
	mov	[hl+5],a	; szDest 			;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl+4],a	; szDest 			;[INF] 2, 8
	mov	a,[hl+2]	; n 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	a,[hl+3]	; n 				;[INF] 2, 8
	incw	ax						;[INF] 1, 4
	mov	[hl+3],a	; n 				;[INF] 2, 8
	xch	a,x						;[INF] 1, 2
	mov	[hl+2],a	; n 				;[INF] 2, 8
	br	!?L0038						;[INF] 3, 6
?L0039:
; line    81
$DGL	0,13
	movw	bc,#0FFFFH	; -1 				;[INF] 3, 6
?L0037:
; line    82
$DGL	0,14
??ef_StrFind:
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	pop	hl						;[INF] 1, 4
	ret							;[INF] 1, 6
??ee_StrFind:
; line    85
_atol:
$DGL	1,98
	push	hl						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	push	ax						;[INF] 1, 4
	movw	ax,sp						;[INF] 2, 8
	movw	hl,ax						;[INF] 1, 4
??bf_atol:
; line    88
$DGL	0,4
	mov	a,#00H	; 0 					;[INF] 2, 4
	mov	[hl],a	; tmp 					;[INF] 1, 4
	mov	[hl+1],a	; tmp 				;[INF] 2, 8
	mov	[hl+2],a	; tmp 				;[INF] 2, 8
	mov	[hl+3],a	; tmp 				;[INF] 2, 8

⌨️ 快捷键说明

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