2013年3月9日

arm汇编指令

摘要: 1、 跳转指令(主要是分支指令) 分支指令有三种:分支指令B;带链接的分支指令BL(影响LR寄存器);带状态切换的分支指令BX(影响CPSR中的ARM状态和Thumb状态切换)a) 分支指令——B指令,该指令跳转范围限制在当前指令的±32M字节地址内(ARM指令为字对齐,最低2位地址固定为0)。 例如:B WAITA ;跳转到WAITA标号处,但没有保存返回地址b) 带链接的分支指令——BL指令适用于子程序调用,使用该指令后,下一条指令的地址(PC-4)被拷贝到R14(即LR) 连接寄存器中,然后跳转到指定地址运行程序。跳转范围限制在当 前指令的±32M字节地址内。2、 数 阅读全文

posted @ 2013-03-09 19:20 suwen 阅读(619) 评论(0) 推荐(0) 编辑

arm微处理器编程模型

摘要: 1、 在异常发生后,ARM9内核会作以下工作:a)在LR中保存当前执行指令的下一条指令地址,即LR=PC-4,保存到对应模式下的LR寄存器中;b) 将CPSR复制到对应模式的SPSR中;c)将CPSR模式位强制设置为与异常类型相对应的值;d) 强制PC从相应的异常向量处取值;e)ARM9内核在处理中断异常时置位中断禁止标志,这样可以防止不受控制的异常嵌套2、 当异常结束时,异常处理程序必须:a)将LR(R14)中的值减去偏移量后存入PC,偏移量根据异常的类型而有所不同;b) 将SPSR的值复制回CPSRc)清零在入口置位的中断禁止标志3、 阅读全文

posted @ 2013-03-09 19:09 suwen 阅读(161) 评论(0) 推荐(0) 编辑

导航