ARM指令集中的跳转指令
2011-09-15 22:10
661 查看
ARM程序中如何实现跳转
1. 使用专门的跳转指令
2. 直接向PC写人要跳转的地址
向PC写人地址在可以任意可以寻址的范围内任意跳转,然而跳转指令只能在当前指令向前或向后的32M的地址空间跳转
跳转指令包括:
1. B
B指令是最简单的跳转,跳到给定的目标地址,从那里继续执行
2. BL
BL跳转之前会在寄存器R14中保存PC的当前内容
3. BLX
BLX 指令从ARM 指令集跳转到指令中所指定的目标地址,并将处理器的工作状态有ARM 状态切换到Thumb 状态,该指令同时将PC 的当前内容保存到寄存器R14 中(用于主程序使用ARM指令而子程序使用Thumb指令)
4. BX
BX 指令跳转到指令中所指定的目标地址,目标地址处的指令既可以是ARM 指令,也可以是Thumb指令
相关文章推荐
- ARM学习笔记2——分支跳转指令
- bl跳转指令使用错误导致编译出现错误--relocation truncated to fit: R_ARM_PC24 init_irq
- ARM汇编中B跳转指令和LDR跳转的区别 【转】
- ARM汇编跳转指令理解
- ARM指令集中经常使用的存储和载入指令
- 08_ARM汇编自学笔记指令系统之跳转指令
- 关于ARM跳转指令b跳转指令范围为什么为正负32M??
- 深入理解ARM跳转指令B以及在此基础上理解arm-linux中断向量表中
- arm跳转指令和流水线的关系
- ARM指令集中的移位操作
- ARM的B,BL跳转指令
- 1.2.17、ARM汇编指令集:数据传输和跳转指令详解
- ARM 汇编中的跳转指令小记
- ARM指令跳转范围
- ARM 指令集>>跳转指令
- ARM指令在Thumb模式和arm模式之间跳转
- ARM中跳转指令BL/BLX偏移值计算规则
- ARM 指令集>>跳转指令
- arm跳转指令
- ARM指令集中立即数寻址的范围