单片机内部RAM的30H单元存放8个16位无符数,低位在前编写51单片机求和,帮忙解释一下程序内容!

2025-05-30 07:57:46
推荐回答(1个)
回答1:

  MOV 50H,#0    ;目的地清零
  MOV 51H,#0
  MOV 52H,#0

  MOV R0,#30H   ;源地址
  MOV R7,#08H   ;8个加数
BEGN:
  MOV A,@R0    ;取加数低八位
  ADD A,52H    ;相加
  MOV 52H,A    ;存放和

  INC R0      ;高八位地址
  MOV A,@R0    ;取加数高八位
  ADDC A, 51H   ;相加
  MOV 51H,A    ;存放和

  CLR A       ;A=0
  ADDC A,50H    ;加上进位
  MOV 50H,A    ;存放和

  INC R0      ;下一个加数的地址
  DJNZ R7,BEGN   ;循环八次

END          ;完

别忘了采纳。