成功编译但失败在iOS上执行汇编MRC指令?

时间:2011-12-13 10:26:25

标签: ios assembly arm

我尝试检查iOS(iPad / iPhone)代码中的ARM体系结构ID,如

"mrc p15,0,r1,c0,c0,0"

指令传递编译但无法执行,Xcode显示"EXC_BAD_INSTRUCTION"。 有什么建议吗?

2 个答案:

答案 0 :(得分:1)

来自ARMv7架构参考手册:

<强> MRC

  

从协处理器转移到ARM核心寄存器会导致协处理器   将值传送到ARM内核寄存器或条件标志。如果   没有协处理器可以执行指令,即未定义指令   生成异常。

显然,没有从哪里读取值。

答案 1 :(得分:0)

您不能将MRC用于某些特定的注册表。 只有在超级用户模式下才允许这种访问。 那是在操作系统启动时说的。

之后,您将无法访问此注册表。

您可能想要访问循环计数器?不? 我认为这在iOS上是不可能的。