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

📄 serial.src

📁 本人于2005年初开始准备将&micro C/OS-II嵌入式实时操作系统移植到8051单片机上
💻 SRC
📖 第 1 页 / 共 5 页
字号:
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#080H
	MOV  	R0,#0BFH
	LCALL	?C?FPMUL
	POP  	DPL
	POP  	DPH
	LCALL	?C?LSTXDATA
;     }
			; SOURCE LINE # 454
?C0086:
;     if(f<1.175494E-38){
			; SOURCE LINE # 455
	MOV  	R7,#0FDH
	MOV  	R6,#0FFH
	MOV  	R5,#07FH
	MOV  	R4,#00H
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	LCALL	?C?FPCMP3
	JNC  	?C0087
;         yyprintf("?.??????");//太小了,超出了最小范围。
			; SOURCE LINE # 456
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (?SC_26)
	MOV  	R1,#LOW (?SC_26)
	LCALL	_?yyprintf
	LJMP 	?C0088
;         return;
;     }
			; SOURCE LINE # 458
?C0087:
;     if(f>1E35){  //f>10^35
			; SOURCE LINE # 459
	MOV  	R7,#0CH
	MOV  	R6,#013H
	MOV  	R5,#09AH
	MOV  	R4,#079H
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	LCALL	?C?FPCMP3
	JZ   	$ + 4H
	JNC  	$ + 5H
	LJMP 	?C0089
;         tf=f/1E35;
			; SOURCE LINE # 460
	MOV  	R3,#0CH
	MOV  	R2,#013H
	MOV  	R1,#09AH
	MOV  	R0,#079H
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?LSTXDATA
;         b=1000.0;
			; SOURCE LINE # 461
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	LCALL	?C?LSTKXDATA
	DB   	044H
	DB   	07AH
	DB   	00H
	DB   	00H
;         for(i=0,j=38;i<4;i++,j--)
			; SOURCE LINE # 462
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	CLR  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOV  	A,#026H
	MOVX 	@DPTR,A
?C0090:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	CLR  	C
	XRL  	A,#080H
	SUBB 	A,#084H
	JNC  	?C0091
;             if(tf/b<1) b=b/10.0;
			; SOURCE LINE # 463
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#080H
	MOV  	R0,#03FH
	LCALL	?C?FPCMP3
	JZ   	?C0091
	JC   	?C0091
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	PUSH 	DPH
	PUSH 	DPL
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#020H
	MOV  	R0,#041H
	LCALL	?C?FPDIV
	POP  	DPL
	POP  	DPH
	LCALL	?C?LSTXDATA
;             else break;
			; SOURCE LINE # 464
?C0092:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	INC  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	DEC  	A
	MOVX 	@DPTR,A
	SJMP 	?C0090
?C0091:
;         w=f/(1E29*b);  //1E35*b/1E6
			; SOURCE LINE # 465
	MOV  	R7,#08H
	MOV  	R6,#08FH
	MOV  	R5,#0A1H
	MOV  	R4,#06FH
;         PrintW(w,j);
			; SOURCE LINE # 466
;     }
			; SOURCE LINE # 467
	LJMP 	?C0202
?C0089:
;     else if(f>1E28){  //10^28<f<=10^35
			; SOURCE LINE # 468
	MOV  	R7,#039H
	MOV  	R6,#03FH
	MOV  	R5,#01H
	MOV  	R4,#06EH
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	LCALL	?C?FPCMP3
	JZ   	$ + 4H
	JNC  	$ + 5H
	LJMP 	?C0096
;         tf=f/1E28;
			; SOURCE LINE # 469
	MOV  	R3,#039H
	MOV  	R2,#03FH
	MOV  	R1,#01H
	MOV  	R0,#06EH
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?LSTXDATA
;         b=1E7;
			; SOURCE LINE # 470
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	LCALL	?C?LSTKXDATA
	DB   	04BH
	DB   	018H
	DB   	096H
	DB   	080H
;         for(i=0,j=35;i<8;i++,j--)
			; SOURCE LINE # 471
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	CLR  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOV  	A,#023H
	MOVX 	@DPTR,A
?C0097:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	CLR  	C
	XRL  	A,#080H
	SUBB 	A,#088H
	JNC  	?C0098
;             if(tf/b<1) b=b/10.0;
			; SOURCE LINE # 472
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#080H
	MOV  	R0,#03FH
	LCALL	?C?FPCMP3
	JZ   	?C0098
	JC   	?C0098
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	PUSH 	DPH
	PUSH 	DPL
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#020H
	MOV  	R0,#041H
	LCALL	?C?FPDIV
	POP  	DPL
	POP  	DPH
	LCALL	?C?LSTXDATA
;             else break;
			; SOURCE LINE # 473
?C0099:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	INC  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	DEC  	A
	MOVX 	@DPTR,A
	SJMP 	?C0097
?C0098:
;         w=f/(1E22*b);  //1E28*b/1E6
			; SOURCE LINE # 474
	MOV  	R7,#078H
	MOV  	R6,#086H
	MOV  	R5,#07H
	MOV  	R4,#064H
?C0198:
;         PrintW(w,j);
			; SOURCE LINE # 475
;     }
			; SOURCE LINE # 476
	LJMP 	?C0202
?C0096:
;     else if(f>1E21){  //10^21<f<=10^28
			; SOURCE LINE # 477
	MOV  	R7,#027H
	MOV  	R6,#0D7H
	MOV  	R5,#058H
	MOV  	R4,#062H
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	LCALL	?C?FPCMP3
	JZ   	$ + 4H
	JNC  	$ + 5H
	LJMP 	?C0103
;         tf=f/1E21;
			; SOURCE LINE # 478
	MOV  	R3,#027H
	MOV  	R2,#0D7H
	MOV  	R1,#058H
	MOV  	R0,#062H
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?LSTXDATA
;         b=1E7;
			; SOURCE LINE # 479
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	LCALL	?C?LSTKXDATA
	DB   	04BH
	DB   	018H
	DB   	096H
	DB   	080H
;         for(i=0,j=28;i<8;i++,j--)
			; SOURCE LINE # 480
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	CLR  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOV  	A,#01CH
	MOVX 	@DPTR,A
?C0104:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	CLR  	C
	XRL  	A,#080H
	SUBB 	A,#088H
	JNC  	?C0105
;             if(tf/b<1) b=b/10.0;
			; SOURCE LINE # 481
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#080H
	MOV  	R0,#03FH
	LCALL	?C?FPCMP3
	JZ   	?C0105
	JC   	?C0105
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	PUSH 	DPH
	PUSH 	DPL
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#020H
	MOV  	R0,#041H
	LCALL	?C?FPDIV
	POP  	DPL
	POP  	DPH
	LCALL	?C?LSTXDATA
;             else break;
			; SOURCE LINE # 482
?C0106:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	INC  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	DEC  	A
	MOVX 	@DPTR,A
	SJMP 	?C0104
?C0105:
;         w=f/(1E15*b);  //1E21*b/1E6
			; SOURCE LINE # 483
	MOV  	R7,#0A9H
	MOV  	R6,#05FH
	MOV  	R5,#063H
	MOV  	R4,#058H
?C0199:
;         PrintW(w,j);
			; SOURCE LINE # 484
;     }
			; SOURCE LINE # 485
	LJMP 	?C0202
?C0103:
;     else if(f>1E14){  //10^14<f<=10^21
			; SOURCE LINE # 486
	MOV  	R7,#021H
	MOV  	R6,#0E6H
	MOV  	R5,#0B5H
	MOV  	R4,#056H
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	LCALL	?C?FPCMP3
	JZ   	$ + 4H
	JNC  	$ + 5H
	LJMP 	?C0110
;         tf=f/1E14;
			; SOURCE LINE # 487
	MOV  	R3,#021H
	MOV  	R2,#0E6H
	MOV  	R1,#0B5H
	MOV  	R0,#056H
	MOV  	DPTR,#0EH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?LSTXDATA
;         b=1E7;
			; SOURCE LINE # 488
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	LCALL	?C?LSTKXDATA
	DB   	04BH
	DB   	018H
	DB   	096H
	DB   	080H
;         for(i=0,j=21;i<8;i++,j--)
			; SOURCE LINE # 489
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	CLR  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOV  	A,#015H
	MOVX 	@DPTR,A
?C0111:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	CLR  	C
	XRL  	A,#080H
	SUBB 	A,#088H
	JNC  	?C0112
;             if(tf/b<1) b=b/10.0;
			; SOURCE LINE # 490
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R3,A
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?FPDIV
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#080H
	MOV  	R0,#03FH
	LCALL	?C?FPCMP3
	JZ   	?C0112
	JC   	?C0112
	MOV  	DPTR,#04H
	LCALL	?C?XBPOFF
	PUSH 	DPH
	PUSH 	DPL
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#020H
	MOV  	R0,#041H
	LCALL	?C?FPDIV
	POP  	DPL
	POP  	DPH
	LCALL	?C?LSTXDATA
;             else break;
			; SOURCE LINE # 491
?C0113:
	MOV  	DPTR,#0CH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	INC  	A
	MOVX 	@DPTR,A
	MOV  	DPTR,#0DH
	LCALL	?C?XBPOFF
	MOVX 	A,@DPTR
	DEC  	A
	MOVX 	@DPTR,A
	SJMP 	?C0111
?C0112:
; 

⌨️ 快捷键说明

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