累减实现除法--松瀚汇编

2014-11-23 20:16:30 · 作者: · 浏览: 9
//***************************************
// 函数名称: FDIV
// 函数功能: 4字节除2字节除法
// 入口参数: 被除数 Z1 Z0 X1 X0 除数 Y1 Y0 
// 出口参数: 结果在 X1 X0 中
// 松瀚汇编算法  以上排在左边的为数据高字节
//***************************************
FDIV:
	CLR	I
L_DIV:
	MOV	A,Z0
	SUB	A,Y0
	MOV	A,Z1
	SBC	A,Y1
	
	B0BTS1	FC
	JMP	DIV_BACK
	
DIV_CAC:
	MOV	A,Z0
	SUB	A,Y0
	MOV	Z0,A
	MOV	A,Z1
	SBC	A,Y1
	MOV	Z1,A
	
	B0BSET	FC
DIV_BACK:
	RLCM	X0
	RLCM	X1

	INCMS	I
	MOV	A,#17
	XOR	A,I
	B0BTS0	FZ
	RET
	
	RLCM	Z0
	RLCM	Z1
	B0BTS1	FC
	JMP	L_DIV
	JMP	DIV_CAC		

DIV_EXIT:
	RLCM	Z0
	RLCM	Z1
	RET