ddiv4.asm

来自「适用于单片机自己编写的汇编程序」· 汇编 代码 · 共 100 行

ASM
100
字号
	ORG      0000H
       	LJMP     START
	ORG      0030H
START:
        MOV      R7,#00H        ;被乘数
        MOV      R6,#0f0H
        MOV      R4,#0AH
        LCALL    MULL
        MOV      A,R3
        MOV      R7,A            ;被除数
        MOV      A,R2
        MOV      R6,A
        MOV      R4,#3       ;乘数
        LCALL    MULL
        MOV      R4,#3CH       ;除数
        MOV      A,R3
        MOV      R7,A            ;被除数
        MOV      A,R2
        MOV      R6,A
        LCALL    DDIVL
        MOV      R4,#10    ;除数
        LCALL    DDIVL
        MOV      A,R2
        CLR      C
        SUBB     A,#04H
        JC       SLE1
        MOV      A,R6
        ADD      A,#01H
        MOV      R6,A
 SLE1:   SJMP     $



MULL:   MOV      A,R6
        MOV      B,R4
        MUL      AB
        MOV      R2,A
        MOV      R3,B
        MOV      A,R4
        MOV      B,R7
        MUL      AB
        ADD      A,R3
        MOV      R3,A
        RET



DDIVL:  MOV     A,R4
BEGIN:  CLR      A
        MOV      R3,A
        MOV      R2,A
        MOV      R1,#10H
DIV0:   ACALL    RLC4
        CLR      C
        MOV      A,R2
        SUBB     A,R4
        MOV      R0,A
        MOV      A,R3
        SUBB     A,#00H
        JC       NEXT
        INC      R6
        MOV      R3,A
        MOV      A,R0
        MOV      R2,A
NEXT:   DJNZ     R1,DIV0                 ;R7R6是商

        RET
 ;;;;;;;;;;;;;;;;;





;****************************
ADD1:   MOV     A,R6
        ADD     A,#01H
        MOV     R6,A
        MOV     A,R7
        ADDC    A,#00H
        MOV     R7,A
        RET

;*************************
RLC4:   CLR     C
        MOV     A,R6
        RLC     A
        MOV     R6,A
        MOV     A,R7
        RLC     A
        MOV     R7,A
        MOV     A,R2
        RLC     A
        MOV     R2,A
        MOV     A,R3
        RLC     A
        MOV     R3,A
        RET
        END

⌨️ 快捷键说明

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