首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

arm9 ldr r13,=0x1000解决办法

2012-04-05 
arm9 ldr r13,0x1000我用的是飞凌的 ok2440 ,哎 菜鸟一只AREA |DATA|,CODE,READONLYENTRYldr r13,0x1000

arm9 ldr r13,=0x1000
我用的是飞凌的 ok2440 ,哎 菜鸟一只 


AREA |DATA|,CODE,READONLY
ENTRY
ldr r13,=0x1000
IMPORT LedMain
b LedMain
END

我看见 led bell等裸机程序中都有这个汇编跳转程序的 可是不懂ldr r13,=0x1000 这句话有什么作用? =0x1000是什么啊? 教材上也没写,网上这东西又找不到的...帮帮忙

[解决办法]
有“=”号表示ldr是一个伪指令。
ldr r13,=0x1000
就表示把立即数0x1000送入r13
[解决办法]

探讨
呵呵  一直不懂那个 =  是什么意思 ,现在知道了 

简单讲就是将LDR PC,=value可以这样理解:
MOV Rd,#value 或者
LDR Rd, [PC, #offset]

在高手看来很简单吧  可是俺是菜鸟

[解决办法]
探讨
r13是stack pointer,因为后面要跳到LedMain,估计这个function是用c写的,所以必须要事先分配stack,否则c程序没法运行。给r13赋值就是分配stack,对跑马灯来说只要是可用内存就行,并不在乎具体地址在哪。

热点排行