高级会员
主题
回帖0
积分1741
阅读权限30
注册时间2011-1-10
最后登录1970-1-1
在线时间 小时
|
k可以用的:
;**************************************************** "
;* 四字节/两字节无符号数除法程序 *
;****************************************************
; R4R5R6R7 / R2R3 = R4R5R6R7(商) ...R2R3 (余数)
;=================================================
DIV4B:
CLR A
MOV R1,A
MOV R0,A
CJNE R0,#00H,DIV4B_1
CJNE R1,#00H,DIV4B_2
CJNE R2,#00H,DIV4B_3
MOV A,R4
MOV B,R3
DIV AB
XCH A,R7
XCH A,R6
XCH A,R5
MOV R4,A
MOV A,B
XCH A,R3
MOV R1,A
MOV R0,#18H
DIV4B_A: MOV A,R7
ADD A,R7
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
MOV A,R3
RLC A
MOV R3,A
JBC CY,DIV4B_B
SUBB A,R1
JC DIV4B_C
DIV4B_B: MOV A,R3
SUBB A,R1
MOV R3,A
INC R7
DIV4B_C: DJNZ R0,DIV4B_A
CLR A
MOV R1,A
MOV R2,A
RET
;=================================================
DIV4B_1: MOV B,#08H
MOV DPL,#00H
DIV4B_11: MOV A,R7
ADD A,R7
MOV R7,A
MOV A,R6
RLC A
MOV R6,A
XCH A,R5
RLC A
XCH A,R5
XCH A,R4
RLC A
XCH A,R4
XCH A,DPL
RLC A
XCH A,DPL
SUBB A,R3
MOV A,R5
SUBB A,R2
MOV A,R4
SUBB A,R1
MOV A,DPL
SUBB A,R0
JC DIV4B_12
MOV DPL,A
MOV A,R6
SUBB A,R3
MOV R6,A
MOV A,R5
SUBB A,R2
MOV R5,A
MOV A,R4
SUBB A,R1
MOV R4,A
INC R7
DIV4B_12: DJNZ B,DIV4B_11
CLR A
XCH A,R6
MOV R3,A
CLR A
XCH A,R5
MOV R2,A
CLR A
XCH A,R4
MOV R1,A
MOV R0,DPL
RET
;================================================
DIV4B_2: MOV B,#10H
DIV4B_21: MOV A,R7
ADD A,R7
MOV R7,A
MOV A,R6
RLC A
MOV R6,A
MOV A,R5
RLC A
MOV R5,A
XCH A,R4
RLC A
XCH A,R4
XCH A,R0
RLC A
XCH A,R0
JBC CY,DIV4B_22
SUBB A,R3
MOV A,R4
SUBB A,R2
MOV A,R0
SUBB A,R1
JC DIV4B_23
DIV4B_22: MOV A,R5
SUBB A,R3
MOV R5,A
MOV A,R4
SUBB A,R2
MOV R4,A
MOV A,R0
SUBB A,R1
MOV R0,A
INC R7
DIV4B_23: DJNZ B,DIV4B_21
CLR A
XCH A,R5
MOV R3,A
CLR A
XCH A,R4
MOV R2,A
CLR A
XCH A,R0
MOV R1,A
RET
;================================================
DIV4B_3: MOV R0,#18H
DIV4B_31: MOV A,R7
ADD A,R7
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,R1
RLC A
XCH A,R1
JBC CY,DIV4B_32
SUBB A,R3
MOV A,R1
SUBB A,R2
JC DIV4B_33
DIV4B_32: MOV A,R4
SUBB A,R3
MOV R4,A
MOV A,R1
SUBB A,R2
MOV R1,A
INC R7
DIV4B_33: DJNZ R0,DIV4B_31
CLR A
XCH A,R1
MOV R2,A
CLR A
XCH A,R4
MOV R3,A
RET |
|