打印

关于嵌入式学习的程序的一些疑问

[复制链接]
185|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
roucun|  楼主 | 2018-9-5 11:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这里用到三个汇编指令。

ldr r0, =0x70000000

这行代码执行完成之后,r0 = 0x7000 0000.

orr r0, r0, #0x13

或运算,此刻r0 = 0x7000 0013.



mcr p15,0,r0,c15,c2,4       @ 256M(0x70000000-0x7fffffff)

mcr这个指令麻烦一点,mcr指令将ARM处理器的寄存器中的数据传递到协处理器的寄存器中。如果协处理器不能成功地执行该操作,将产生未定义的指令异常中断。

指令从ARM寄存器中将数据传送到协处理器p15的寄存器中,其中r0为ARM寄存器,存放源操作数;c15和c2为协处理器寄存器,为目标寄存器;p15和r0之间的0为操作码1;最后4为操作码2。

你在查找下1176手册就明白这句话的含义。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

421

主题

446

帖子

0

粉丝