原创 单片机8051/8031 4字节十进制加法程序

2009-4-25 13:41 4374 7 7 分类: MCU/ 嵌入式

 ;8051/80314字节十进制加法
 ;加数存储单元为50H,51H,52H,53H
 ;被加数存储单元为20H,21H,22H,23H
 ;入口参数:被加数地址由R0指出,被加数首地址由R1指出,循环次数由R2指出
 ;出口参数: 结果存储到20H,21H,22H,23H
 ; Author:borlittle
 ;2009-13:07
 ;       高位 高位   低位 低位 
 ; 加数:   33  35    55    37   
 ;加数地址:  53     52    51  50
 ; 被加数:   44  64    44  63
 ;被加数地址:23     22    21  20 
 ; 结果:       78     00    00  00
 ORG 0000H
 LJMP MAIN
 ORG 4030H
MAIN:MOV SP,#60H
 MOV R0,#20H  ;被加数赋值
 MOV @R0,#63H
 INC R0                   
 MOV @R0,#44H
 INC R0                   
 MOV @R0,#64H
 INC R0                   
 MOV @R0,#44H


 MOV R1,#50H ;加数赋值
 MOV @R1,#37H
 INC R1
 MOV @R1,#55H
 INC R1
 MOV @R1,#35H
 INC R1
 MOV @R1,#33H


 MOV R2,#04H   ;由低位到高位共计算4次
 MOV R0,#20H
    MOV R1,#50H   ;初始化对齐
 LCALL DACN
HERE:LJMP HERE
DACN:CLR C
DAL:
    MOV A,@R0
 ADDC A,@R1
 DA  A   ;十进制调整
 MOV @R1,A
 INC R0
 INC R1
 DJNZ  R2,DAL
 CLR A
 ADDC A,#00H
 RET
 END


 

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条