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

📄 _fsadd.asm

📁 很少见的源码公开的msc51和z80的c编译器。
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_mant2_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	genGoto 	ljmp	00115$;	genLabel 00114$:;	_fsadd.c 56;	genMinus 	mov	dptr,#___fsadd_exp2_1_1	mov	dps, #0x01	mov	dptr, #___fsadd_exp1_1_1	dec	dps	clr	c	movx	a,@dptr	xch	a, ap	inc	dps	movx	a,@dptr	xch	a, ap	subb	a,ap	push	acc	dec	dps	inc	dptr	movx	a,@dptr	xch	a, ap	inc	dps	inc	dptr	movx	a,@dptr	xch	a, ap	subb	a,ap	push	acc	mov	dps, #0x00	pop	acc	mov	r3,a	pop	acc	mov	r2,a;	genRightShift ;	genSignedRightShift 	mov	b,r2	inc	b	mov	dptr,#___fsadd_mant1_1_1	movx	a,@dptr	mov	r2,acc	inc	dptr	movx	a,@dptr	mov	r3,acc	inc	dptr	movx	a,@dptr	mov	r4,acc	inc	dptr	movx	a,@dptr	mov	r5,acc	movx	a,@dptr; Peephole 206   removed redundant mov a,a	rlc	a	mov	ov,c	sjmp	00164$00163$:	mov	c,ov	mov	a,r5	rrc	a	mov	r5,a	mov	a,r4	rrc	a	mov	r4,a	mov	a,r3	rrc	a	mov	r3,a	mov	a,r2	rrc	a	mov	r2,a00164$:	djnz	b,00163$;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 57;	genAssign 	mov	dptr,#___fsadd_exp2_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign (390 auto-toggle fun)	mov	dps, #0x21	mov	dptr,#___fsadd_exp1_1_1	movx	a,@dptr	movx	@dptr,a	inc	dptr	inc	dptr	movx	a,@dptr	movx	@dptr,a	mov	dps, #0;	genLabel 00115$:;	_fsadd.c 59;	genPlus 	mov	dptr,#___fsadd_mant2_1_1	mov	dps, #0x01	mov	dptr, #___fsadd_mant1_1_1	dec	dps	movx	a,@dptr	xch	a, ap	inc	dps	movx	a,@dptr	add 	a, ap	mov	r2,a	dec	dps	inc	dptr	movx	a,@dptr	xch	a, ap	inc	dps	inc	dptr	movx	a,@dptr	addc 	a, ap	mov	r3,a	dec	dps	inc	dptr	movx	a,@dptr	xch	a, ap	inc	dps	inc	dptr	movx	a,@dptr	addc 	a, ap	mov	r4,a	dec	dps	inc	dptr	movx	a,@dptr	xch	a, ap	inc	dps	inc	dptr	movx	a,@dptr	addc 	a, ap	mov	r5,a	mov	dps, #0x00;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 61;	genCmpLt 	mov	dptr,#___fsadd_mant1_1_1;	genCmp	inc	dptr	inc	dptr	inc	dptr	movx	a,@dptr;	genIfxJump ; Peephole 111   removed ljmp by inverse jump logic	jnb  acc.7,00119$00165$:;	_fsadd.c 63;	genUminus 	mov	dptr,#___fsadd_mant1_1_1	movx	a,@dptr	setb	c	cpl	a	addc	a,#0	movx	@dptr,a	inc	dptr	movx	a,@dptr	cpl	a	addc	a,#0	movx	@dptr,a	inc	dptr	movx	a,@dptr	cpl	a	addc	a,#0	movx	@dptr,a	inc	dptr	movx	a,@dptr	cpl	a	addc	a,#0	movx	@dptr,a;	_fsadd.c 64;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_sign_1_1; Peephole 101   removed redundant mov; Peephole 180   changed mov to clr	clr  a	movx @dptr,a	inc  dptr	movx @dptr,a	inc	dptr; Peephole 180   changed mov to clr	clr  a	movx	@dptr,a	inc	dptr	mov	a,#0x80	movx	@dptr,a;	genGoto ;	genLabel ; Peephole 132   changed ljmp to sjmp	sjmp 00121$00119$:;	_fsadd.c 66;	genIfx 	mov	dptr,#___fsadd_mant1_1_1	push	b	movx	a,@dptr	mov	b, a	inc	dptr	movx	a,@dptr	orl	b,a	inc	dptr	movx	a,@dptr	orl	b,a	inc	dptr	movx	a,@dptr	orl	b,a	mov	a,b	pop	b;	genIfxJump ; Peephole 109   removed ljmp by inverse jump logic	jnz  00121$00166$:;	_fsadd.c 67;	genRet ; Peephole 181a   used 24 bit load of dptr	mov  dptr,#0x0000	mov	b,#0x00	ljmp	00128$;	_fsadd.c 70;	genLabel 00121$:;	genAssign 	mov	dptr,#___fsadd_mant1_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r2,a	inc	dptr	movx	a,@dptr	mov	r3,a	inc	dptr	movx	a,@dptr	mov	r4,a	inc	dptr	movx	a,@dptr;	genAnd ; Peephole 105   removed redundant mov	mov  r5,a	anl	a,#0xE0; Peephole 162   removed sjmp by inverse jump logic	jz   00168$00167$:	ljmp	00123$00168$:;	_fsadd.c 72;	genLeftShift ;	genLeftShiftLiteral (1), size 4;	genLeftShiftLiteral wimping out	mov	b,#0x02	mov	dptr,#___fsadd_mant1_1_1	movx	a,@dptr	mov	r2,acc	inc	dptr	movx	a,@dptr	mov	r3,acc	inc	dptr	movx	a,@dptr	mov	r4,acc	inc	dptr	movx	a,@dptr	mov	r5,acc	sjmp	00170$00169$:	mov	a,r2	add	a,acc	mov	r2,a	mov	a,r3	rlc	a	mov	r3,a	mov	a,r4	rlc	a	mov	r4,a	mov	a,r5	rlc	a	mov	r5,a00170$:	djnz	b,00169$;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 73;	genMinus 	mov	dptr,#___fsadd_exp1_1_1	movx	a,@dptr	add	a,#0xff	mov	r2,a	inc	dptr	movx	a,@dptr	addc	a,#0xff	mov	r3,a;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_exp1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a;	genGoto 	ljmp	00121$;	genLabel 00123$:;	_fsadd.c 77;	genAssign 	mov	dptr,#___fsadd_mant1_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r2,a	inc	dptr	movx	a,@dptr	mov	r3,a	inc	dptr	movx	a,@dptr	mov	r4,a	inc	dptr	movx	a,@dptr;	genAnd ; Peephole 105   removed redundant mov	mov  r5,a;	genIfxJump 	jb	acc.6,00171$	ljmp	00125$00171$:;	_fsadd.c 79;	genRightShift ;	genSignedRightShift ;	genRightShiftLiteral (1), size 4;	genRightShiftLiteral wimping out	mov	b,#0x02	mov	dptr,#___fsadd_mant1_1_1	movx	a,@dptr	mov	r2,acc	inc	dptr	movx	a,@dptr	mov	r3,acc	inc	dptr	movx	a,@dptr	mov	r4,acc	inc	dptr	movx	a,@dptr	mov	r5,acc	movx	a,@dptr; Peephole 206   removed redundant mov a,a	rlc	a	mov	ov,c	sjmp	00173$00172$:	mov	c,ov	mov	a,r5	rrc	a	mov	r5,a	mov	a,r4	rrc	a	mov	r4,a	mov	a,r3	rrc	a	mov	r3,a	mov	a,r2	rrc	a	mov	r2,a00173$:	djnz	b,00172$;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 80;	genPlus 	mov	dptr,#___fsadd_exp1_1_1;	Swapped plus args.	movx	a,@dptr	add	a,#0x01	movx	@dptr,a	inc	dptr	movx	a,@dptr	addc	a,#0x00	movx	@dptr,a;	genLabel 00125$:;	_fsadd.c 84;	genAssign 	mov	dptr,#___fsadd_mant1_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r2,a	inc	dptr	movx	a,@dptr	mov	r3,a	inc	dptr	movx	a,@dptr	mov	r4,a	inc	dptr	movx	a,@dptr	mov	r5,a;	genAnd 	mov	a,r2;	genIfxJump ; Peephole 111   removed ljmp by inverse jump logic	jnb  acc.6,00130$00174$:;	genAssign ;	genAssign: resultIsFar = FALSE	mov	r2,#0x20	mov	r3,#0x00	mov	r4,#0x00	mov	r5,#0x00;	genGoto ;	genLabel ; Peephole 132   changed ljmp to sjmp	sjmp 00131$00130$:;	genAssign ;	genAssign: resultIsFar = FALSE	mov	r2,#0x1F	mov	r3,#0x00	mov	r4,#0x00	mov	r5,#0x00;	genLabel 00131$:;	genAssign 	mov	dptr,#___fsadd_mant1_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r6,a	inc	dptr	movx	a,@dptr	mov	r7,a	inc	dptr	movx	a,@dptr	mov	r0,a	inc	dptr	movx	a,@dptr	mov	r1,a;	genPlus 	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	add	a,r6	movx	@dptr,a	mov	a,r3	addc	a,r7	inc	dptr	movx	@dptr,a	mov	a,r4	addc	a,r0	inc	dptr	movx	@dptr,a	mov	a,r5	addc	a,r1	inc	dptr	movx	@dptr,a;	_fsadd.c 87;	genAssign 	mov	dptr,#___fsadd_mant1_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r2,a	inc	dptr	movx	a,@dptr	mov	r3,a	inc	dptr	movx	a,@dptr	mov	r4,a	inc	dptr	movx	a,@dptr;	genAnd ; Peephole 105   removed redundant mov	mov  r5,a;	genIfxJump 	jb	acc.6,00175$	ljmp	00127$00175$:;	_fsadd.c 89;	genRightShift ;	genSignedRightShift ;	genRightShiftLiteral (1), size 4;	genRightShiftLiteral wimping out	mov	b,#0x02	mov	dptr,#___fsadd_mant1_1_1	movx	a,@dptr	mov	r2,acc	inc	dptr	movx	a,@dptr	mov	r3,acc	inc	dptr	movx	a,@dptr	mov	r4,acc	inc	dptr	movx	a,@dptr	mov	r5,acc	movx	a,@dptr; Peephole 206   removed redundant mov a,a	rlc	a	mov	ov,c	sjmp	00177$00176$:	mov	c,ov	mov	a,r5	rrc	a	mov	r5,a	mov	a,r4	rrc	a	mov	r4,a	mov	a,r3	rrc	a	mov	r3,a	mov	a,r2	rrc	a	mov	r2,a00177$:	djnz	b,00176$;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 90;	genPlus 	mov	dptr,#___fsadd_exp1_1_1;	Swapped plus args.	movx	a,@dptr	add	a,#0x01	movx	@dptr,a	inc	dptr	movx	a,@dptr	addc	a,#0x00	movx	@dptr,a;	genLabel 00127$:;	_fsadd.c 94;	genRightShift ;	genSignedRightShift ;	genRightShiftLiteral (6), size 4;	genRightShiftLiteral wimping out	mov	b,#0x07	mov	dptr,#___fsadd_mant1_1_1	movx	a,@dptr	mov	r2,acc	inc	dptr	movx	a,@dptr	mov	r3,acc	inc	dptr	movx	a,@dptr	mov	r4,acc	inc	dptr	movx	a,@dptr	mov	r5,acc	movx	a,@dptr; Peephole 206   removed redundant mov a,a	rlc	a	mov	ov,c	sjmp	00179$00178$:	mov	c,ov	mov	a,r5	rrc	a	mov	r5,a	mov	a,r4	rrc	a	mov	r4,a	mov	a,r3	rrc	a	mov	r3,a	mov	a,r2	rrc	a	mov	r2,a00179$:	djnz	b,00178$;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 97;	genAssign 	mov	dptr,#___fsadd_mant1_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r2,a	inc	dptr	movx	a,@dptr	mov	r3,a	inc	dptr	movx	a,@dptr	mov	r4,a	inc	dptr	movx	a,@dptr	mov	r5,a;	genAnd 	mov	dptr,#___fsadd_mant1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a;	better literal AND.	mov	a,r4	anl	a, #0x7F	inc	dptr	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 100;	genCast 	mov	dptr,#___fsadd_exp1_1_1	movx	a,@dptr	mov	r2,a	inc	dptr	movx	a,@dptr	mov	r3,a	movx	a,@dptr	rlc	a	subb	a,acc	mov	r4,a	mov	r5,a;	genLeftShift ;	genLeftShiftLiteral (23), size 4;	genLeftShiftLiteral wimping out	mov	b,#0x18	sjmp	00181$00180$:	mov	a,r2	add	a,acc	mov	r2,a	mov	a,r3	rlc	a	mov	r3,a	mov	a,r4	rlc	a	mov	r4,a	mov	a,r5	rlc	a	mov	r5,a00181$:	djnz	b,00180$;	genAssign 	mov	dptr,#___fsadd_sign_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r6,a	inc	dptr	movx	a,@dptr	mov	r7,a	inc	dptr	movx	a,@dptr	mov	r0,a	inc	dptr	movx	a,@dptr	mov	r1,a;	genOr 	mov	a,r6	orl	ar2,a	mov	a,r7	orl	ar3,a	mov	a,r0	orl	ar4,a	mov	a,r1	orl	ar5,a;	genAssign 	mov	dptr,#___fsadd_mant1_1_1;	genAssign: resultIsFar = TRUE;	genFarFarAssign	movx	a,@dptr	mov	r6,a	inc	dptr	movx	a,@dptr	mov	r7,a	inc	dptr	movx	a,@dptr	mov	r0,a	inc	dptr	movx	a,@dptr	mov	r1,a;	genOr 	mov	a,r6	orl	ar2,a	mov	a,r7	orl	ar3,a	mov	a,r0	orl	ar4,a	mov	a,r1	orl	ar5,a;	genPointerSet 	mov	dptr,#___fsadd_fl1_1_1	mov	a,r2	movx	@dptr,a	inc	dptr	mov	a,r3	movx	@dptr,a	inc	dptr	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	_fsadd.c 101;	genPointerGet ;	genFarPointerGet	mov	dptr,#___fsadd_fl1_1_1	movx	a,@dptr	inc	dptr	mov	r2,a	movx	a,@dptr	inc	dptr	mov	r3,a	movx	a,@dptr	inc	dptr	mov	r4,a	movx	a,@dptr	mov	r5,a;	genRet 	mov	dpl,r2	mov	dph,r3	mov	dpx,r4	mov	b,r5;	genLabel 00128$:;	genEndFunction 	ret	.area CSEG    (CODE)

⌨️ 快捷键说明

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