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

📄 _strrchr.asm

📁 很少见的源码公开的msc51和z80的c编译器。
💻 ASM
字号:
;--------------------------------------------------------; File Created by SDCC : FreeWare ANSI-C Compiler; Version 2.3.0 Thu Sep 20 10:57:49 2001;--------------------------------------------------------	.module _strrchr	;--------------------------------------------------------; Public variables in this module;--------------------------------------------------------	.globl _strrchr;--------------------------------------------------------; special function registers;--------------------------------------------------------;--------------------------------------------------------; special function bits ;--------------------------------------------------------;--------------------------------------------------------; internal ram data;--------------------------------------------------------	.area _DATA;--------------------------------------------------------; overlayable items in internal ram ;--------------------------------------------------------	.area _OVERLAY;--------------------------------------------------------; indirectly addressable internal ram data;--------------------------------------------------------	.area _ISEG;--------------------------------------------------------; bit data;--------------------------------------------------------	.area _BSEG;--------------------------------------------------------; external ram data;--------------------------------------------------------	.area _XSEG;--------------------------------------------------------; global & static initialisations;--------------------------------------------------------	.area _GSINIT	.area _GSFINAL	.area _GSINIT;--------------------------------------------------------; Home;--------------------------------------------------------	.area _HOME	.area _CODE;--------------------------------------------------------; code;--------------------------------------------------------	.area _CODE;	_strrchr.c 27;	genLabel;	genFunction;	---------------------------------; Function strrchr; ---------------------------------___strrchr_start:_strrchr:	push	ix	ld	ix,#0	add	ix,sp	ld	hl,#-2	add	hl,sp	ld	sp,hl;	_strrchr.c 32;	genAssign;	AOP_STK for ;	AOP_STK for _strrchr_start_1_1	ld	a,4(ix)	ld	-2(ix),a	ld	a,5(ix)	ld	-1(ix),a;	_strrchr.c 34;	genAssign;	AOP_STK for _strrchr_start_1_1	ld	e,-2(ix)	ld	d,-1(ix);	genLabel00101$:;	genPointerGet	ld	a,(de)	ld	c,a;	genPlus;	genPlusIncr	inc	de;	genAssign;	AOP_STK for 	ld	4(ix),e	ld	5(ix),d;	genIfx	xor	a,a	or	a,c	jp	nz,00101$;	_strrchr.c 37;	genLabel00105$:;	genMinus;	AOP_STK for 	ld	c,4(ix)	ld	b,5(ix)	dec	bc;	genAssign;	AOP_STK for 	ld	4(ix),c	ld	5(ix),b;	genCmpEq;	AOP_STK for _strrchr_start_1_1; genCmpEq: left 2, right 2, result 0	ld	a,-2(ix)	cp	c	jp	nz,00116$	ld	a,-1(ix)	cp	b; Rule 5: Changed jump logic	jp	z,00107$00116$:;	genPointerGet	ld	a,(bc)	ld	e,a;	genCmpEq;	AOP_STK for ; genCmpEq: left 1, right 1, result 0	ld	a,6(ix)	cp	e; Rule 4: Changed jp order	jp	z,00118$00117$:	jp	00105$00118$:;	genLabel00107$:;	_strrchr.c 40;	genPointerGet	ld	a,(bc)	ld	e,a;	genCmpEq;	AOP_STK for ; genCmpEq: left 1, right 1, result 0	ld	a,6(ix)	cp	e; Rule 4: Changed jp order	jp	z,00120$00119$:	jp	00109$00120$:;	_strrchr.c 41;	genRet	ld	l,c	ld	h,b	jp	00110$;	genLabel00109$:;	_strrchr.c 43;	genRet	ld	hl,#0x0000;	genLabel00110$:;	genEndFunction	ld	sp,ix	pop	ix	ret___strrchr_end:	.area _CODE

⌨️ 快捷键说明

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