?? fpsub4.asm
字號:
ADDC 22H,0
FIT41: CLRC
RET
FIT42: CLR 20H
CLR 22H
CLRC
RET
FIT43: LD 20H,#0FFFFH
LD 22H,#7FFFH
JBC 26H,7,FIT44
NOT 22H
NEG 20H
ADDC 22H,0
FIT44: SETC
RET
FSQR4: LD 20H,[1AH]
LD 22H,2[1AH]
JBC 23H,7,FSQ41
CLRC
RET
FSQ41: CMPB 20H,0
JNE FSQ42
ST 20H,[1EH]
ST 22H,2[1EH]
SETC
RET
FSQ42: SUB SP,#4
LD 1CH,SP
FSQ43: ST 20H,[1CH]
ST 22H,2[1CH]
LCALL FDIV4
PUSH 1AH
LD 1AH,1EH
LCALL FADD4
POP 1AH
DECB 20H
STB 20H,[1EH]
CMPB 20H,[1CH]
JNE FSQ43
ANDB 27H,#7FH
SUB 24H,20H
SUBC 26H,22H
JC FSQ44
NOT 26H
NEG 24H
ADDC 26H,0
FSQ44: SUB 24H,#3FFH
SUBC 26H,0
JC FSQ43
ADD SP,#4
RET
FEXP4: PUSH #38AAH
PUSH #3B80H
LD 1CH,SP
LCALL FMUL4
ADD SP,#4
JBS 20H,7,FEX41
CLR 28H
PUSH 28H
SJMP FEX44
FEX41: CMPB 20H,#86H
JNC FEX42
CLRC
RET
FEX42: ORB 23H,#80H
SUBB 28H,20H,#87H
NEGB 28H
CLRB 20H
SHRL 20H,28H
JBC 2DH,7,FEX43
NEGB 23H
FEX43: PUSH 22H
SHLL 20H,#8
NORML 20H,28H
LDB 20H,#7FH
SUBB 20H,28H
ANDB 23H,#7FH
ORB 23H,2DH
ST 20H,[1EH]
ST 22H,2[1EH]
FEX44: PUSH 1AH
LD 1AH,1EH
LCALL FPLN4
DB 70H,0ADH,9AH,5 ;1.59268622E-5
DB 73H,8FH,5BH,24H ;1.56743669E-4
DB 76H,0D2H,0A6H,2EH ;1.33248629E-3
DB 79H,2BH,8EH,1DH ;9.61641484E-3
DB 7BH,0A0H,58H,63H ;0.0555044428
DB 7DH,6,0FEH,75H ;0.240226833
DB 7FH,17H,72H,31H ;0.693147144
DB 7FH,0FFH,0FFH,7FH ;0.99999999
DB 0FFH
POP 1AH
LD 20H,[1EH]
POP 22H
ADDB 20H,23H
ST 20H,[1EH]
SETC
RET
FEXD4: LD 24H,#8E81H ;ln 10
ST 24H,[1EH]
LD 26H,#135DH
ST 26H,2[1EH]
LD 1CH,1EH
LCALL FMUL4
PUSH 1AH
LD 1AH,1EH
LCALL FEXP4
POP 1AH
RET
FLNX4: LD 20H,[1AH]
LD 22H,2[1AH]
JBS 23H,7,FLN4X
CMPB 20H,0
JNE FLN40
FLN4X: CLRC
RET
FLN40: SUBB 20H,#80H
PUSH 1AH
PUSH 20H
CLRB 20H
SHLL 20H,#1
LD 1AH,1EH
NORML 20H,28H
JNE FLN42
ST 20H,[1EH]
ST 22H,2[1EH]
SJMP FLN43
FLN42: LDB 20H,#7FH
SUBB 20H,28H
ANDB 23H,#7FH
ST 20H,[1EH]
ST 22H,2[1EH]
LCALL FPLN4
DB 78H,0E5H,7DH,0C4H ;-5.99645292E-3
DB 7BH,0FCH,2FH,0CH ;0.0342254483
DB 7CH,0F1H,0DDH,0BCH ;-0.0922201925
DB 7DH,4AH,0E0H,28H ;0.164918088
DB 7DH,1CH,1EH,0F5H ;-0.239372664
DB 7EH,0B8H,0AFH,29H ;0.331418744
DB 7EH,44H,0E8H,0FFH ;-0.499818909
DB 7FH,8BH,0FFH,7FH ;0.999993047
DB 67H,0C3H,9CH,77H ;3.53E-8
DB 0FFH ;END
FLN43: POP 20H
LDB 28H,#80H
JBC 20H,7,FLN41
NEGB 20H
CLRB 28H
FLN41: LDB 21H,20H
CLRB 20H
MULU 24H,20H,#17F8H
MULU 20H,#0B172H
ADD 20H,26H
ADDC 22H,0
NORML 20H,29H
JE FLN44
XORB 23H,28H
LDB 20H,#87H
SUBB 20H,29H
FLN44: SUB SP,#4
LD 1CH,SP
ST 20H,[1CH]
ST 22H,2[1CH]
LCALL FADD4
ADD SP,#4
POP 1AH
SETC
RET
FLOG4: LCALL FLNX4
JNC FLG41
PUSH 1AH
LD 1AH,1EH
PUSH #5E5BH
PUSH #0D97EH ;1/ln10
LD 1CH,SP
LCALL FMUL4
ADD SP,#4
POP 1AH
FLG41: RET
FBTD4: LD 20H,[1AH]
LD 22H,2[1AH]
ANDB 29H,23H,#80H
LDB 28H,20H
CLRB 20H
ORB 23H,#80H
CMPB 28H,0
JNE FBT14
STB 28H,[1EH]
STB 28H,1[1EH]
STB 28H,2[1EH]
STB 28H,3[1EH]
STB 28H,4[1EH]
STB 28H,5[1EH]
STB 28H,6[1EH]
STB 28H,7[1EH]
RET
FBT14: CLRB 2AH
FBT24: CMPB 28H,#83H
JE FBT64
JC FBT74
FBT34: CMPB 28H,#80H
JE FBT84
JNC FBT94
FBT44: SUBB 28H,#87H
NEGB 28H
SHRL 20H,28H
ANDB 2AH,#7FH
ORB 2AH,29H
STB 2AH,[1EH]+
STB 23H,[1EH]+
LDB 28H,#6
FBT54: MULUB 24H,22H,#10
MULU 20H,#10
ADD 22H,24H
STB 23H,[1EH]+
DJNZ 28H,FBT54
SUB 1EH,#8
RET
FBT64: CMP 22H,#0A000H
JNC FBT34
FBT74: MULU 24H,20H,#0CCCCH
MULU 20H,22H,#0CCCCH
ADD 24H,20H
ADDC 26H,22H
ADDC 22H,0
ADD 20H,26H
ADDC 22H,0
NORML 20H,2BH
SUBB 28H,2BH
SUBB 28H,#3
INCB 2AH
SJMP FBT24
FBT84: CMP 22H,#8000H
JC FBT44
FBT94: MULU 24H,20H,#0A000H
MULU 20H,22H,#0A000H
ADD 20H,26H
ADDC 22H,0
NORML 20H,2BH
SUBB 28H,2BH
ADDB 28H,#4
DECB 2AH
SJMP FBT34
FSIN4: PUSH #490FH ;3.1415926
PUSH #0DB81H
LD 1CH,SP
LD 20H,[1AH]
LD 22H,2[1AH]
ANDB 23H,#7FH
ORB 1AH,#1 ;1 -> B
ST 20H,[1EH]
ST 22H,2[1EH]
PUSH 1AH
LD 1AH,1EH
FSI41: LD 20H,[SP] ;/B -> B
XORB 20H,#1
ST 20H,[SP]
LCALL FSUB4
JGE FSI41
LD 20H,#0DB80H
LD 22H,#490FH
ST 20H,[1CH]
ST 22H,2[1CH]
LCALL FADD4
JLT FSI42
LD 22H,2[1EH]
XORB 23H,#80H
ST 22H,2[1EH]
FSI42: LCALL FADD4
LCALL FPLN4
DB 73H,87H,0F5H,90H ;-1.3824376E-4
DB 73H,6CH,0F4H,0D1H ;-2.00228479E-4
DB 79H,79H,55H,0DH ;8.62633548E-3
DB 73H,85H,8AH,0EBH ;-2.246295E-4
DB 7DH,0DAH,92H,0AAH ;-0.166575814
DB 70H,0A8H,0D9H,94H ;-1.77443298E-5
DB 80H,0BH,0,0 ;1.00000136
DB 66H,0D4H,0FDH,0C2H ;-2.27E-8
DB 0FFH ;END
POP 20H
AND 1AH,20H,#0FFFEH
SHLB 20H,#7
XORB 20H,3[1AH]
ANDB 20H,#80H
ORB 20H,3[1EH]
STB 20H,3[1EH]
ADD SP,#4
RET
FCOS4: PUSH #490FH ;3.1415926
PUSH #0DB81H
LD 1CH,SP
LD 20H,[1AH]
LD 22H,2[1AH]
ANDB 23H,#7FH
ST 20H,[1EH]
ST 22H,2[1EH]
ORB 1AH,#1
PUSH 1AH
LD 1AH,1EH
FCS41: LD 20H,[SP] ;/B -> B
XORB 20H,#1
ST 20H,[SP]
LCALL FSUB4
JGE FCS41
LD 20H,#0DB80H
LD 22H,#490FH
ST 20H,[1CH]
ST 22H,2[1CH]
LCALL FADD4
JLT FCS42
LD 20H,[SP] ;/B -> B
XORB 20H,#1
ST 20H,[SP]
LD 22H,2[1EH]
XORB 23H,#80H
ST 22H,2[1EH]
FCS42: LCALL FADD4
LCALL FPLN4
DB 73H,66H,65H,15H ;1.42475215E-4
DB 76H,79H,89H,0E4H ;-1.74359891E-3
DB 74H,67H,27H,79H ;4.7522339E-4
DB 7BH,78H,2FH,29H ;4.13050368E-2
DB 73H,0BH,6DH,21H ;1.53947775E-4
DB 7FH,38H,2,80H ;-0.500033863
DB 6DH,0C1H,0CDH,50H ;3.11141801E-6
DB 80H,0,0,0 ;1
DB 0FFH ;END
POP 20H
AND 1AH,20H,#0FFFEH
SHLB 20H,#7
XORB 20H,3[1AH]
ANDB 20H,#80H
ORB 20H,3[1EH]
STB 20H,3[1EH]
ADD SP,#4
RET
FTAN4: PUSH 2[1AH]
PUSH [1AH]
LD 1CH,SP
PUSH 1EH
LD 1EH,1CH
LCALL FCOS4
POP 1EH
LCALL FSIN4
LD 1CH,SP
PUSH 1AH
LD 1AH,1EH
LCALL FDIV4
POP 1AH
ADD SP,#4
RET
FDTB4: CLR 30H
ST 0,[1EH]
ST 0,2[1EH]
LDB 20H,[1AH]+
CMPB 20H,#2BH; +
JE FDTB41
CMPB 20H,#2DH; -
JNE FDTB42
ORB 31H,#80H
FDTB41: LDB 20H,[1AH]+
FDTB42: CMPB 20H,#30H
JNC FDTB46
CMPB 20H,#3AH
JC FDTB46
FDTB43: SUBB 20H,#30H
PUSH 1AH
PUSH 20H
LD 1AH,1EH
LD 32H,#83H; 10
LD 34H,#2000H
LD 1CH,#32H
LCALL FMUL4
LD 1EH,1CH
POP 20H
EXTB 20H
CLR 22H
LCALL INTF4
LD 1EH,1AH
LCALL FADD4
JBC 31H,6,FDTB44
INCB 30H
FDTB44: POP 1AH
FDTB45: LDB 20H,[1AH]+
CMPB 20H,#30H
JNC FDTB46
CMPB 20H,#3AH
JNC FDTB43
FDTB46: JBS 31H,6,FDTB47
CMPB 20H,#2EH; .
JNE FDTB47
ORB 31H,#40H
SJMP FDTB45
FDTB47: CMPB 20H,#0DH
JNE FDTB4A
FDTB4B: JBC 31H,6,FDTB49
PUSH 1AH
FDTB48: LD 32H,#0CD7CH; 0.1
LD 34H,#4CCCH
LD 1AH,1EH
LD 1CH,#32H
LCALL FMUL4
DJNZ 30H,FDTB48
POP 1AH
FDTB49: ANDB 20H,31H,#80H
ORB 20H,3[1EH]
STB 20H,3[1EH]
RET
FDTB4A: CMPB 20H,#2CH; ,
JE FDTB4B
ORB 31H,#20H
SJMP FDTB4B
FLBD4: PUSH #4CCCH ;0.1
PUSH #0CD7CH
LD 1CH,SP
PUSH 1EH
LD 1EH,1AH
LCALL FMUL4
POP 1EH
ADD SP,#4
PUSH #6666H ;0.9
PUSH #667FH
PUSH 1AH
LD 1AH,1EH
LCALL FMUL4
POP 1AH
LD 1CH,1EH
ADD SP,#4
LCALL FADD4
RET
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -