FLTSIN: MOV A,@R0 MOV C,ACC.7 MOV 1DH,C CLR ACC.7 MOV @R0,A MOV A,@R0 MOV C,ACC.7 MOV 1FH,C MOV C,ACC.6 MOV ACC.7,C MOV R2,A INC R0 MOV A,@R0 MOV R3,A INC R0 MOV A,@R0 MOV R4,A DEC R0 DEC R0 MOV R5,#0 MOV R6,#0A2H MOV R7,#0FAH CLR 1EH LCALL MUL1 MOV A,R2 MOV R5,A MOV A,R3 MOV R6,A MOV A,R4 MOV R7,A INT: MOV A,R3 ORL A,R4 JNZ INTA CLR 1FH MOV R2,#41H RET INTA: MOV A,R2 JZ INTB JB ACC.7,INTB CLR C SUBB A,#10H JC INTD RET INTB: CLR A MOV R4,A MOV C,1FH RRC A MOV R3,A RL A MOV R2,A JNZ INTC MOV R2,#41H INTC: RET INTD: CLR F0 MOV A,R2 JZ SIN2 SIN1: CLR C MOV A,R3 RRC A MOV R3,A MOV A,R4 RRC A MOV R4,A INC R2 CLR OV CJNE R2,#40H,RR1E MOV R2,#3FH SETB OV RRE1: CJNE R2,#10H,SIN1 MOV A,R4 JNB ACC.1,SIN2 CPL 1DH SIN2: JB ACC.0,SIN3 CPL 1FH SJMP SIN4 SIN3: MOV A,R4 INC A MOV R4,A JNZ SIN4 INC R3 SIN4: RLNORM: MOV A,R3 ORL A,R4 JNZ RLNORM1 MOV R2,#0C1H RET RLNORM1: MOV A,R3 JB ACC.7,RLNORM2 CLR C LCALL RL1 SJMP RLNORM RLNORM2: CLR OV RET RL1: MOV A,R4 RLC A MOV R4,A MOV A,R3 RLC A MOV R3,A DEC R2 CJNE R2,#0C0H,RL1E CLR A MOV R3,A MOV R4,A MOV R2,#0C1H RL1E: CLR OV SETB F0 LCALL AS1 MOV0: INC R0 INC R0 MOV A,R4 MOV @R0,A DEC R0 MOV A,R3 MOV @R0,A DEC R0 MOV A,R2 MOV C,1FH MOV ACC.7,C MOV @R0,A CLR ACC.7 CLR OV CJNE A,#3FH,MV01 SETB OV MV01: MOV A,@R0 FPLN: POP DPH POP DPL XCH A,R0 XCH A,R1 XCH A,R0 CLR A MOV R2,A MOV R3,A MOV R4,A CLR 1FH PLN1: CLR A MOVC A,@A+DPTR MOV C,ACC.7 MOV 1EH,C MOV C,ACC.6 MOV ACC.7,C MOV R5,A INC DPTR CLR A MOVC A,@A+DPTR MOV R6,A INC DPTR CLR A MOVC A,@A+DPTR MOV R7,A INC DPTR MOV C,1EH RRC A XRL A,23H RLC A MOV F0,C AS1: MOV A,R6 ORL A,R7 JZ MOV0 MOV A,R3 ORL A,R4 JNZ EQ1 MOV A,R6 MOV R3,A MOV A,R7 MOV R4,A MOV A,R5 MOV R2,A MOV C,1EH MOV 1FH,C CLR A MOVC A,@A+DPTR CJNE A,#40H,PLN2 XCH A,R0 XCH A,R1 XCH A,R0 MOV0: INC R0 INC R0 MOV A,R4 MOV @R0,A DEC R0 MOV A,R3 MOV @R0,A DEC R0 MOV A,R2 MOV C,1FH MOV ACC.7,C MOV @R0,A CLR ACC.7 CLR OV CJNE A,#3FH,MV01 SETB OV MV01: MOV A,@R0 CLR A INC DPTR JMP @A+DPTR PLN2: MOV A,@R1 XRL A,23H RLC A MOV 1FH,C LCALL MUL0 SJMP PLN1 FLOG: MOV A,@R0 MOV C,ACC.7 MOV 1FH,C MOV C,ACC.6 MOV ACC.7,C MOV R2,A INC R0 MOV A,@R0 MOV R3,A INC R0 MOV A,@R0 MOV R4,A DEC R0 DEC R0 JB 1FH,LNOV MOV A,R3 ORL A,R4 JNZ LN0 LNOV: SETB OV JNB OV,LOG RET MUL0: LCALL MVR1 MUL1: MOV A,R3 ORL A,R4 JZ MUL6 MOV A,R6 ORL A,R7 JZ MUL5 MOV A,R7 MOV B,R4 MUL AB MOV A,B XCH A,R7 MOV B,R3 MUL AB ADD A,R7 MOV R7,A CLR A ADDC A,B XCH A,R4 MOV B,R6 MUL AB ADD A,R7 MOV R7,A MOV A,B ADDC A,R4 MOV R4,A CLR A RLC A XCH A,R3 MOV B,R6 MUL AB ADD A,R4 MOV R4,A MOV A,B ADDC A,R3 MOV R3,A JB ACC.7,MUL2 MOV A,R7 RLC A MOV R7,A LCALL RL1 MUL2: MOV A,R7 JNB ACC.7,MUL3 INC R4 MOV A,R4 JNZ MUL3 INC R3 MOV A,R3 JNZ MUL3 MOV R3,#80H INC R2 MUL3: MOV A,R2 ADD A,R5 MD: MOV R2,A JB ACC.7,MUL4 JNB ACC.6,MUL6 MOV R2,#3FH SETB OV RET MUL4: JB ACC.6,MUL6 MUL5: CLR A MOV R3,A MOV R4,A MOV R2,#41H MUL6: CLR OV DB 7DH,93H,28H DB 41H,0,0 DB 80H,0A4H,64H DB 41H,0,0 DB 1,0C9H,2 DB 41H,0,0 DB 40H ;结束 MOV A,@R0 JZ SIN5 JB ACC.6,SIN5 INC R0 MOV @R0,#80H INC R0 MOV @R0,#0 DEC R0 DEC R0 MOV A,#1 SIN5: MOV C,1DH MOV ACC.7,C MOV @R0,A RET