|
(1)
adr r0, _start /* 把_start的相对地址移到r0 */
ldr r1, _TEXT_BASE /* 把_TEXT_BASE地址,就是BOOT在RAM中运行地址 */
cmp r0, r1 /* 比较两个地址是否相同,如果相同,就已经在RAM运行,否则就是FLASH中运行。*/
(2)
ldr r0, =WTCON
ldr r1, =0x0
str r1, [r0]
对于第二段的第一条指令,执行完后r0中存的就是看门狗的地址(WTCON在定义时,就是看门狗的地址),这个毫无疑问,但是第一段的第二条指令执行完后为什么在r1中存放的也是地址?_TEXT_BASE前面没有加"="号,应该把_TEXT_BASE地址所指向的值传给r1才对啊。难道_TEXT_BASE定义时就不是定义的为TEXT段的基地址,_TEXT_BASE指向的才是TEXT的基地址吗?还请高人指教...
|
|