三十一.代码搬移

来源:互联网 发布:1024程序员节 百度百科 编辑:程序博客网 时间:2024/05/14 14:57
1.垫脚石空间不够存放完整的uboot,所以要利用前面能够存放在垫脚石里的代码将剩余uboot复制到内存

2.相对跳转和绝对跳转

3.起始地址:(在本课由于未初始化NAND,所以起始地址在垫脚石)垫脚石的起始地址。
终点:链接器脚本里指定的起始链接地址

4.搬移方式,地址每次自动增加4个字节,利用一个中转寄存器。

5.代码:
@将bin文件从_start开始到bss_start结束的数据搬移到_start指定的链接地址(0x50008000)copy_to_ddr:adrr0,_startldrr1,=_startldrr2,=bss_startcopy_loop:ldrr3,[r0],#4strr3,[r1],#4cmpr1,r2bnecopy_loopmovpc,lr


0 0
原创粉丝点击