实验内容:
- 实验问题 :R2、R3为源RAM区首址内的R7个字节的数据传送到R4、R5为目标地址的RAM区。
- 操作步骤:在R2、R3中输入源数据首址(例如2000H),R4、R5中输入目的地址(例如3000H), R7中输入字节数(例如20H),运行程序,检查2000H~201FH中内容是否和3000H~301FH 中内容完全一致。
实验程序:
ORG 0000H
LJMP MAIN
MAIN:
MOV R2,#20H
MOV R3,#00H
MOV R4,#30H
MOV R5,#00H
MOV R7,#20H
LOOP:
MOV DPH,R2
MOV DPL,R3;输入源地址,R2为高八位,R3为低八位
MOVX A,@DPTR;取出源地址数据
INC DPTR;指向下一位源地址
MOV R2,DPH
MOV R3,DPL;为输入下次操作源地址准备
MOV DPL,R5
MOV DPH,R4;输入目标地址
MOVX @DPTR,A;将数据送入目标地址
INC DPTR;指向下一位目标地址
MOV R4,DPH
MOV R5,DPL;为输入下次操作目标地址准备
DJNZ R7,LOOP;判断R7是否为0,若不为0则R7操作数减1继续执行LOOP
END