片外RAM从1000H~10FFH单元有一数据块,用汇编语言编写程序将其传送到片外RAM的2500H单元开始的区域中。
发布网友
发布时间:2022-04-29 22:23
我来回答
共3个回答
热心网友
时间:2023-10-09 17:55
MOV R0,#0
LOOP:
MOV P2,#10H
MOVX A,@R0
MOV P2,#25H
MOVX @R0,A
DJNZ R0,LOOP
MOV_END:
热心网友
时间:2023-10-09 17:55
用个循环,
指定16位指针为读取地址
用指针线读取到寄存器A
地址加(用R几忘记了)
然后指定16位指针为写地址
用寄存器A的内容写到16为指针的地址处
地址加()
循环体判断
热心网友
时间:2023-10-09 17:56
wdph equ 21h ;dptr高地址缓存
wdpl equ 22h ;dptr低地址缓存
read:
mov r1,#0ffh;读取次数
mov wdph, #25h;数据存放地址高字节
mov wdpl, #00h
mov dptr, #1000h; 送读数据初始地址
read_1:
push dph
push dpl; 保存读取数据地址
movx a, @dptr; 读一个字节
mov dph, wdph;设DPTR为新目标地址
mov dpl, wdpl;
movx @dptr, a;写一个字节
inc dptr;新目标地址+1
mov wdph, dph;保存下一个新目标地址,为下一次写数据做准备
mov wdpl, dpl;
pop dpl
pop dph;恢复取数地址
inc dptr;取数地址+1 ,为下一次取数准备
djnz r1, #00h,resd_1;不满足条件跳转,继续读写。