汇编语言读取ROM复制到RAM
单片机从外部ROM读取的内容写入外部RAM
ROM的地址范围2000H~3FFFH 而RAM地址6000H~7FFFH 现在问题是将ROM以TAB为首地址的32个单元的内容依次读出并写入外部RAM以4000H为首地址的区域去。
![](https://img2020.cnblogs.com/blog/1929023/202108/1929023-20210818181150845-1456408504.jpg)
流程如图
代码如下
MOV P2,#40H ;开始地址为#40h
MOV DPTR,#TAB ;把TAB的地址放到DPTR,用于对ROM的读取
MOV R0,#0
AGIN: MOV A,R0
MOVC A,@A+DPTR ;把ROM 地址单元A+DPTR的内容读到A
MOVX @DPTR,A ;把A的内容写入RAM地址单元DPTR
INC R0
CJNE R0,#32,AGIN
HERE: SJMP HERE
TAB: DB 0C0H, 0F9H, 0A4H,0X45,0X54,0X4A ;此处应该有32个内容
END
![](https://img2020.cnblogs.com/blog/1929023/202108/1929023-20210818181150845-1456408504.jpg)