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

📄 mfxbs.asm

📁 用8051汇编编程的定点
💻 ASM
📖 第 1 页 / 共 3 页
字号:
	RLC   A           
	XCH   A,R3        
	XCH   A,R2        
	RLC   A           
	XCH   A,R2        
	RLC   A           
	DJNZ  R7,S030     
	DEC   R6          
	MOV   @R1,A       
	INC   R1          
S028:   MOV   A,R3        
	MOV   B,#0AH      
	MUL   AB          
	MOV   R3,A        
	MOV   R7,B        
	MOV   A,R2        
	MOV   B,#0AH      
	MUL   AB          
	ADD   A,R7        
	MOV   R2,A        
	CLR   A           
	ADDC  A,B         
	MOV   @R1,A       
	INC   R1          
	DJNZ  R6,S028     
	DEC   R1          
	SJMP  S031        
S022:   MOV   A,R2        
	SUBB  A,#80H      
	JC    S032        
S023:   MOV   R5,#0CDH    
	MOV   R4,#0CCH    
	LCALL DMUL        
	MOV   A,R2        
	JB    0E7H,S033   
	MOV   A,R7        
	MOV   C,0E7H      
	ORL   C,0E6H      
	MOV   A,R3        
	RLC   A           
	MOV   R3,A        
	MOV   A,R2        
	RLC   A           
	MOV   R2,A        
	DEC   R6          
S037:   MOV   A,R6        
	ADD   A,#0FDH     
	MOV   R6,A        
	DEC   R1          
	INC   @R1         
	INC   R1          
	SJMP  S021        
S036:   SJMP  S034        
S027:   MOV   A,R2        
	RRC   A           
	MOV   R2,A        
	MOV   A,R3        
	RRC   A           
	MOV   R3,A        
	INC   R6          
	SJMP  S026        
S024:   MOV   A,#0CBH     
	CLR   C           
	SUBB  A,R3        
	MOV   A,#0CCH     
	SUBB  A,R2        
	JC    S035        
S025:   MOV   R4,#0A0H    
	MOV   R5,#00H     
	LCALL DMUL        
	MOV   A,R2        
	JB    0E7H,S099   
	MOV   A,R7        
	MOV   C,0E7H      
	ORL   C,0E6H      
	MOV   A,R3        
	RLC   A           
	MOV   R3,A        
	MOV   A,R2        
	RLC   A           
	MOV   R2,A        
	DEC   R6          
S038:   MOV   A,R6        
	ADD   A,#04H      
	MOV   R6,A        
	DEC   R1          
	DEC   @R1         
	INC   R1          
	SJMP  S036        
S033:   MOV   A,R7        
	JNB   0E7H,S037   
	MOV   A,R3        
	ORL   A,#01H      
	MOV   R3,A        
	SJMP  S037        
S099:   MOV   A,R7        
	JNB   0E7H,S038   
	MOV   A,R3        
	ORL   A,#01H      
	MOV   R3,A        
	SJMP  S038        
FSDT:   JC    S039        
	MOV   C,39H       
	JB    0D5H,S040   
	MOV   A,R2        
	RRC   A           
	MOV   R2,A        
	MOV   A,R3        
	RRC   A           
	MOV   R3,A        
	INC   R6          
	RET               
S040:   MOV   A,R4        
	RRC   A           
	MOV   R4,A        
	MOV   A,R5        
	RRC   A           
	MOV   R5,A        
	INC   R7          
	RET               
S039:   MOV   A,R2        
	JNZ   S041        
	CJNE  R3,#00H,S042
	MOV   R6,#42H     
S043:   RET               
S041:   JB    0E7H,S043   
S042:   MOV   C,0D5H      
	MOV   A,R3        
	RLC   A           
	MOV   R3,A        
	MOV   A,R2        
	RLC   A           
	MOV   R2,A        
	CLR   0D5H        
	DEC   R6          
	SJMP  S039  
;浮点数到整数转换,(R0) 到 R2R3,符号在 0EH.      
FINT:   CLR   0D5H        
	INC   R0          
	MOV   A,@R0       
	MOV   R2,A        
	INC   R0          
	MOV   A,@R0       
	MOV   R3,A        
	DEC   R0          
	DEC   R0          
	MOV   A,@R0       
	MOV   C,0E7H      
	MOV   3CH,C       
	CLR   0E7H        
	JNB   0E6H,S044   
	MOV   R2,#00H     
	MOV   R3,#00H     
	RET               
S044:   CJNE  A,#11H,S045 
S045:   JC    S046        
	SETB  0D5H        
	MOV   R2,#0FFH    
	MOV   R3,#0FFH    
	RET               
S046:   CJNE  A,#10H,S047 
	RET               
S047:   CLR   C           
	XCH   A,R2        
	RRC   A           
	XCH   A,R2        
	XCH   A,R3        
	RRC   A           
	XCH   A,R3        
	INC   A           
	SJMP  S046
;双字节整数转浮点数,R2R3 到(R1) 指定单元,符号在 0EH。        
INTF:   MOV   R6,#10H     
	SETB  C           
	CLR   0D5H        
	LCALL FSDT        
	MOV   A,R6        
	MOV   C,3CH       
	MOV   0E7H,C      
	MOV   R4,A        
	LCALL FSTR        
	RET               
NORM:   MOV   A,@R0       
	MOV   C,0E7H      
	MOV   0D5H,C      
	INC   R0          
	MOV   C,0E6H      
	MOV   0E7H,C      
	MOV   R2,A        
	MOV   A,@R0       
	INC   R0          
	JNZ   S048        
	MOV   A,@R0       
	JNZ   S049        
	DEC   R0          
	DEC   R0          
	MOV   A,#45H      
S051:   MOV   C,0D5H      
	MOV   0E7H,C      
	MOV   @R0,A       
	RET               
S048:   JB    0E7H,S050   
S049:   CLR   C           
	MOV   A,@R0       
	RLC   A           
	MOV   @R0,A       
	DEC   R0          
	MOV   A,@R0       
	RLC   A           
	MOV   @R0,A       
	INC   R0          
	DEC   R2          
	CJNE  R2,#0C0H,S048
S050:   DEC   R0           
	DEC   R0           
	MOV   A,R2         
	SJMP  S051         
;
;多项式运算子程序
FPLN: POP   DPH             
POP   DPL             
CLR   A               
MOVC  A,@A+DPTR       
MOV   R6,A            
INC   DPTR            
CLR   A               
MOVC  A,@A+DPTR       
MOV   R2,A            
INC   DPTR            
CLR   A               
MOVC  A,@A+DPTR       
MOV   R3,A            
INC   DPTR            
T1ABH: MOV   A,@R0    
XRL   A,R6            
MOV   C,0E7H           
MOV   38H,C           
INC   R0              
MOV   A,@R0           
MOV   R4,A            
INC   R0              
MOV   A,@R0           
MOV   R5,A            
DEC   R0              
DEC   R0              
LCALL DMUL           
MOV   A,R2           
JB    0E7H,T1C9H      
MOV   A,R7           
RLC   A              
MOV   A,R3           
RLC   A               
MOV   R3,A            
MOV   A,R2            
RLC   A               
MOV   R2,A            
DEC   R6              
T1C9H: MOV   A,R6     
ADD   A,@R0           
MOV   C,38H           
MOV   0E7H,C           
MOV   R6,A            
CLR   A               
MOVC  A,@A+DPTR       
MOV   R7,A            
INC   DPTR            
CLR   A               
MOVC  A,@A+DPTR       
MOV   R4,A            
INC   DPTR            
CLR   A               
MOVC  A,@A+DPTR       
MOV   R5,A            
INC   DPTR            
CLR   3AH             
LCALL FABP           
MOV   A,R4            
MOV   R6,A            
CLR   A               
MOVC  A,@A+DPTR       
CJNE  A,#40H,T1ABH    
LCALL FSTR           
INC   DPTR            
CLR   A               
JMP   @A+DPTR         
;
;FML4:
FML4: LCALL FLD4      
INC   R1              
MOV   A,R0            
PUSH  ACC             
LCALL DML3           
POP   ACC             
MOV   R0,A            
DEC   R1              
MOV   A,R2            
MOV   C,0E7H           
MOV   0D5H,C           
MOV   A,@R0           
XRL   A,@R1           
MOV   C,0E7H           
MOV   38H,C           
MOV   A,@R0           
ADD   A,@R1           
XCH   A,R1            
PUSH  ACC             
SETB  C               
LCALL FSD4           
POP   ACC             
XCH   A,R1            
MOV   C,38H           
MOV   0E7H,C           
MOV   R4,A            
RET                   
;
;FDV4:
FDV4: LCALL FLD4       
 MOV   A,@R0           
 XRL   A,@R1           
 MOV   C,0E7H           
 MOV   38H,C          
 CLR   A               
 MOV   R5,A            
 MOV   R6,A            
 MOV   R7,A            
 INC   R1              
 CJNE  @R1,#00H,T353H  
 INC   R1              
 CJNE  @R1,#00H,T352H  
 INC   R1              
 CJNE  @R1,#00H,T351H  
 DEC   R1              
 DEC   R1              
 DEC   R1              
 SETB  C               
 RET                   
T351H: DEC   R1              
T352H: DEC   R1              
T353H: DEC   R1              
 MOV   A,@R0           
 XCH   A,R0            
 INC   R1              
 PUSH  ACC             
T359H: MOV   A,R4            
INC   R1              
 INC   R1              
 SUBB  A,@R1           
 MOV   A,R3            
 DEC   R1              
 SUBB  A,@R1           
 MOV   A,R2            
 DEC   R1              
 SUBB  A,@R1          
 JC    T372H          
 CLR   0D5H            
 CLR   39H            
 LCALL FSD4           
 MOV   A,R5           
 RRC   A              
 MOV   R5,A           
 CLR   C              
 SJMP  T359H          
T372H: MOV   A,R0     
 PUSH  ACC            
 LCALL DDV3           
 POP   ACC            
 DEC   R1             
 XCH   A,R0           
 POP   ACC            
 XCH   A,R0           
 CLR   C              
 SUBB  A,@R1          
 MOV   C,38H          
 MOV   0E7H,C          
 MOV   R4,A           
 CLR   C              
 RET                  
;PLD4:
FLD4: INC   R0        
 MOV   A,@R0          
 MOV   R2,A           
 INC   R0             
 MOV   A,@R0          
 MOV   R3,A           
 INC   R0             
 MOV   A,@R0          
 MOV   R4,A           
 DEC   R0             
 DEC   R0             
 DEC   R0             
 RET                  
;DML3:
DML3: MOV   R0,#19H   
CLR   C               
 CLR   A              
 MOV   R5,A           
 MOV   R6,A           
 MOV   R7,A           
T39CH: MOV   A,R5     
 RRC   A              
 MOV   R5,A           
 MOV   A,R6           
 RRC   A              
 MOV   R6,A            
 MOV   A,R7            
 RRC   A               
 MOV   R7,A            
 XCH   A,R2            
 RRC   A               
 XCH   A,R2            
 XCH   A,R3            
 RRC   A               
 XCH   A,R3            
 XCH   A,R4            
 RRC   A               
 XCH   A,R4            
 DJNZ  R0,T3B1H        
 RET                   
T3B1H: JNC   T39CH     
 INC   R1              
 INC   R1              
 ADD   A,@R1           
 MOV   R7,A            
MOV   A,R6            
 DEC   R1              
 ADDC  A,@R1           
 MOV   R6,A            
 MOV   A,R5            
 DEC   R1              
 ADDC  A,@R1           
 MOV   R5,A            
 SJMP  T39CH           
;DDV3:
DDV3: MOV   R0,#18H    
 INC   R1              
 INC   R1              
T3C5H: CLR   C         
 MOV   A,R7            
 RLC   A               
 MOV   R7,A            
 MOV   A,R6            
 RLC   A               
 MOV   R6,A            
 MOV   A,R5            
 RLC   A               
 MOV   R5,A            
 MOV   A,R4            
 RLC   A               
 MOV   R4,A            
 XCH   A,R3            
 RLC   A               
 XCH   A,R3            
 XCH   A,R2            
 RLC   A               
 XCH   A,R2            
 MOV   0D5H,C           
 CLR   C               
 SUBB  A,@R1           
 DEC   R1              
 MOV   A,R3            
 SUBB  A,@R1           
 DEC   R1              
 MOV   B,A             
 MOV   A,R2            
 SUBB  A,@R1           
 INC   R1              
 INC   R1              
 JB    0D5H,T3EBH       
 JC    T3F3H           
T3EBH: CLR   C         
 MOV   R2,A            
 MOV   A,R4            
 SUBB  A,@R1           
 MOV   R4,A            
 MOV   R3,B            
 INC   R7              
T3F3H: DJNZ  R0,T3C5H  
 DEC   R1              
 DEC   R1              
 RET                   
;FAB4:
FAB4: INC   R1              
 MOV   A,@R1           
 MOV   R5,A            
 INC   R1              
 MOV   A,@R1           
 MOV   R6,A            
 INC   R1              
 MOV   A,@R1           
 MOV   R7,A            
 DEC   R1              
 DEC   R1              
 DEC   R1              
 MOV   A,@R0           
 MOV   C,0E7H           
 MOV   38H,C           
 XRL   A,@R1           
 JNB   0E7H,T40FH       
 CPL   3AH             
T40FH: MOV   A,R0           
 PUSH  ACC             
 MOV   A,@R0           
 MOV   C,0E6H           
 MOV   0E7H,C           
 MOV   R0,A            
 MOV   A,R1            
 PUSH  ACC             
 MOV   A,@R1           
 MOV   C,0E6H           
 MOV   0E7H,C           
 MOV   R1,A            
T421H: CLR   C              

⌨️ 快捷键说明

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