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

📄 _modulong.asm

📁 很少见的源码公开的msc51和z80的c编译器。
💻 ASM
字号:
;--------------------------------------------------------; File Created by SDCC : FreeWare ANSI-C Compiler; Version 2.3.0 Thu Sep 20 10:57:50 2001;--------------------------------------------------------	.module _modulong	;--------------------------------------------------------; Public variables in this module;--------------------------------------------------------	.globl __modulong;--------------------------------------------------------; 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;	_modulong.c 29;	genLabel;	genFunction;	---------------------------------; Function _modulong; ---------------------------------____modulong_start:__modulong:	push	ix	ld	ix,#0	add	ix,sp	ld	hl,#-1	add	hl,sp	ld	sp,hl;	_modulong.c 31;	genAssign;	AOP_STK for __modulong_count_1_1	ld	-1(ix),#0x00;	_modulong.c 34;	genAssign;	AOP_STK for __modulong_count_1_1	ld	-1(ix),#0x00;	genLabel00103$:;	genGetHBIT;	AOP_STK for 	ld	a,11(ix)	rlc	a	and	a,#1	ld	e,a;	genIfx	xor	a,a	or	a,e	jp	nz,00117$;	_modulong.c 35;	genIpush; _saveRegsForCall: sendSetSize: 0 deInUse: 0 bcInUse: 0 deSending: 0	ld	a,#0x01	push	af	inc	sp;	genIpush;	AOP_STK for 	ld	l,10(ix)	ld	h,11(ix)	push	hl	ld	l,8(ix)	ld	h,9(ix)	push	hl;	genCall	call	__rlulong_rrx_s	ld	b,d	ld	c,e	ld	d,h	ld	e,l	pop	hl	pop	hl	inc	sp;	genAssign;	AOP_STK for 	ld	8(ix),e	ld	9(ix),d	ld	10(ix),c	ld	11(ix),b;	_modulong.c 36;	genCmpGt;	AOP_STK for 	ld	a,4(ix)	sbc	a,e	ld	a,5(ix)	sbc	a,d	ld	a,6(ix)	sbc	a,c	ld	a,7(ix)	sbc	a,b	jp	nc,00102$;	_modulong.c 38;	genIpush; _saveRegsForCall: sendSetSize: 0 deInUse: 0 bcInUse: 0 deSending: 0	ld	a,#0x01	push	af	inc	sp;	genIpush	ld	l,c	ld	h,b	push	hl	ld	l,e	ld	h,d	push	hl;	genCall	call	__rrulong_rrx_s; Rule 1: Removed redundent load; Rule 1: Removed redundent load	ld	b,h	ld	c,l	pop	hl	pop	hl	inc	sp;	genAssign;	AOP_STK for 	ld	8(ix),c	ld	9(ix),b	ld	10(ix),e	ld	11(ix),d;	_modulong.c 39;	genGoto	jp	00117$;	genLabel00102$:;	_modulong.c 41;	genPlus;	AOP_STK for __modulong_count_1_1;	genPlusIncr	inc	-1(ix);	genAssign;	AOP_STK for __modulong_count_1_1;	(registers are the same);	genGoto	jp	00103$;	_modulong.c 44;	genLabel00117$:;	genAssign;	AOP_STK for __modulong_count_1_1	ld	c,-1(ix);	genLabel00108$:;	_modulong.c 45;	genCmpGt;	AOP_STK for ;	AOP_STK for 	ld	a,4(ix)	sbc	a,8(ix)	ld	a,5(ix)	sbc	a,9(ix)	ld	a,6(ix)	sbc	a,10(ix)	ld	a,7(ix)	sbc	a,11(ix)	jp	c,00107$;	_modulong.c 46;	genMinus;	AOP_STK for ;	AOP_STK for 	ld	a,4(ix)	sub	a,8(ix)	ld	4(ix),a	ld	a,5(ix)	sbc	a,9(ix)	ld	5(ix),a	ld	a,6(ix)	sbc	a,10(ix)	ld	6(ix),a	ld	a,7(ix)	sbc	a,11(ix)	ld	7(ix),a;	genLabel00107$:;	_modulong.c 48;	genIpush; _saveRegsForCall: sendSetSize: 0 deInUse: 0 bcInUse: 1 deSending: 0	push	bc	ld	a,#0x01	push	af	inc	sp;	genIpush;	AOP_STK for 	ld	l,10(ix)	ld	h,11(ix)	push	hl	ld	l,8(ix)	ld	h,9(ix)	push	hl;	genCall	call	__rrulong_rrx_s;	AOP_STK for 	ld	11(ix),d	ld	10(ix),e	ld	9(ix),h	ld	8(ix),l	pop	hl	pop	hl	inc	sp	pop	hl	ld	c,l;	genAssign;	(operands are equal 4);	_modulong.c 49;	genAssign	ld	b,c;	genMinus	dec	c;	genIfx	xor	a,a	or	a,b	jp	nz,00108$;	_modulong.c 51;	genRet;	AOP_STK for 	ld	l,4(ix)	ld	h,5(ix)	ld	e,6(ix)	ld	d,7(ix);	genLabel00111$:;	genEndFunction	ld	sp,ix	pop	ix	ret____modulong_end:	.area _CODE

⌨️ 快捷键说明

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