C51汇编多字节求和

题目描述:

 

多字节数据求和,求无符号数Ai的累加和。Ai为单字节数,并按i(i=1,2,3,...,,n)顺序存放在RAM从60H开始的单元中,
n放在R2中,求他们的和(双字节)高位放在R3,低位放在R4中。

 

算法思想:

向让低四位相加求和(ADD),如果有进位(CY=1),则对高四位用ADDC,并将结果放入R3 

源代码:

 

ORG 0000H
LJMP ADD2
ORG 0100H
ADD2:
    MOV R2,#8H
    MOV R0,#60H
    MOV A,#0H
    MOV R4,#0DFH
    MOV R5,#09H
TT:    
    ADD A,R5
    MOV @R0,A
    INC R0
    INC R5
    MOV A,R4
    DJNZ R2,TT
ADD1:
    CLR A
    MOV R3,#00H
    MOV R4,#00H
    MOV R2,#8H
    MOV R0,#60H
MAIN:
    MOV A,R4
    ADD A,@R0
    MOV R4,A
    CLR A
    ADDC A,R3
    MOV R3,A
    INC R0
    CLR C
    DJNZ R2,MAIN
    SJMP $
    END

 

调试结果:

posted @ 2021-07-01 11:21  nanfengnan  阅读(323)  评论(0编辑  收藏  举报