浮点加减法运算.txt

来自「单片机浮点数运算子程序」· 文本 代码 · 共 72 行

TXT
72
字号
FABP:   MOV  A,R6
	MOV  C,A.7
	MOV  38H,C  ;保存被加数符号
	XRL  A,R7
	JNB  A.7,FA1
	CPL  3AH    ;俩数异号,取反运算标志
FA1:    MOV  A,R6
	MOV  C,A.6   ;扩展阶码为双符号位
	MOV  A.7,C
	MOV  R6,A
	MOV  A,R7
	MOV  C,A.6
	MOV  A.7,C
	MOV  R7,A
	CLR  C
	MOV  A,R6
	SUBB A,R7
	JZ   FA2
	CLR  F0
	CLR  39H
	JB   A.7,FA5
	CJNZ R4,#0,FA6
	CJNZ R5,#0,FA6
FA2:	JB  3AH,FA8
	MOV  A,R3
	ADD  A,R5
	MOV  R3,A
	MOV  A,R2
	ADDC A,R4
	MOV  R2,A
	JNC  FA4
	SETB 39H   ;溢出,把尾数右移一位
	CLR  C
FA3:	CLR  F0
	LCALL FSDT
FA4:    CJNE  R2,#0,FAA
	CLNE  R3,#0,FAA
	MOV   R4,#41H   ;结果为0
	RET
FAA:	MOV   A,R6     ;送结果符号
	MOV   C,38H
	MOV A.7,C
	XCH   A,R4
	MOV   R6,A
	RET
FA5:    CLNE R2,#0,FA7
	CLNE R3,#0,FA7
	MOV  A,R7
	MOV  R6,A
	SJMP FA2
FA6:	CPL  F0
FA7:	CLR  C
	LCALL FSDT
	SJMP  FA1
FA8:	MOV  A,R3  ;执行尾数减法
	CLR  C
	SUBB A,R5
	MOV  R3,A
	MOV  A,R2
	SUBB A,R4
	MOV  R2,A
	JNC  FA9
	CLR  A
	CLR  C
	SUBB A,R3
	MOV  R3,A
	CLR  A    ;结果符号取反
	SUBB A,R2
	MOV  R2,A
	CPL  38H
FA9:	SETB C
	SJMP FA3

⌨️ 快捷键说明

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