如题:编程将外部RAM2000H–202FH单元中的内容,移入内部RAM20H–4FH中,并将原数据块区域清0.
首先内部外部的数据转移指令是不同的:
MOV: 单片机内部的寄存器或者存储器之间相互传递数据(内部RAM);
MOVX: 单片机内部的A累加器与片外的数据存储器(片外RAM)传送数据.
START: MOV DPTR,#2000H //取外部RAM首地址
MOV LEN,2F //转移长度
MOV R0,#20H //内部RAM首地址
LOOP: MOVX A,@DPTR //转移
MOV @R0,A //转移
CLR A //清零
MOVX @DPTR,A //将外部RAM清零
INC DPTR //指针地址加1
INC R0 //指针地址加1
DJNZ LEN,LOOP //DJNZ表示LEN减1,若不为0则跳转LOOP继续执行,若为0则继续执行下一行
SJMP $ //结束