题目:
在内部RAM从DATA开始的存储区中有一组数据,数据块以0FFH结尾,请编写程序将他们转移到外部RAM从BLOCK开始的存储区中,并求这些数据的和,把和存储于内部RAM中的SUM单元(假定和不超过1字节)。程序:
MOV R1,#DATA
MOV DPTR,#BLOCK ;预置指针
MOV R2,#0 ;清累加和临时寄存器
mov_cycle: ;数据转移循环
MOV A,@R1
CJNE A,#0FFH,move_to_xdata
SJMP save_sum ;数据块转移到结尾,保存累加和结束
move_to_xdata:
MOVX @DPTR,A
ADD A,R2
MOV R2,A
INC R1
INC DPTR
SJMP mov_cycle ;
save_sum:
MOV SUM,R2
在内部RAM从DATA开始的存储区中有一组数据,数据块以0FFH结尾,请编写程序将他们转移到外部RAM从BLOCK开始的存储区中,并求这些数据的和,把和存储于内部RAM中的SUM单元(假定和不超过1字节)。程序:
MOV R1,#DATA
MOV DPTR,#BLOCK ;预置指针
MOV R2,#0 ;清累加和临时寄存器
mov_cycle: ;数据转移循环
MOV A,@R1
CJNE A,#0FFH,move_to_xdata
SJMP save_sum ;数据块转移到结尾,保存累加和结束
move_to_xdata:
MOVX @DPTR,A
ADD A,R2
MOV R2,A
INC R1
INC DPTR
SJMP mov_cycle ;
save_sum:
MOV SUM,R2