51单片机向片外存储器写入与读取大量数据(比如60KB)的方法

程序需要存储大量数据比如图片,怎么向片外存储器写入或读取?(新手提问,如果问题有毛病的话请见谅)
如果是64K程序如下:如果不是64k,只要衫雀比较处改一困漏下就可以或尺早。
MOVDS:
MOV DPTR,#0000H
LOOP:
CLR A
MOVX @DPTR,A
INC DPTR
MOV A,DPH
ADD A,DPL
JNZ LOOP
RET
有SPI方式的flash存储几百兆字节的都有。比如AT45DB161是个2M的