糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 刘帅嵌入式系统-BLX(2)

刘帅嵌入式系统-BLX(2)

时间:2018-07-13 00:28:54

相关推荐

刘帅嵌入式系统-BLX(2)

第二种格式的BLX指令记作BLX(2)。BLX(2)指令从ARM指令集跳转到指定的目标地址,目标地址的指令可以是ARM指令,也可以是Thumb指令。目标地址放在指令中的寄存器中,该地址的bit[0]值为0,目标地址处的指令类型由CPSR中的T位决定。该指令同时将PC寄存器的内容复制到LR寄存器中。

指令的编码格式

指令的语法格式

BLX{}

其中:

为指令执行的条件码。当忽略时,指令为无条件执行。寄存器中为跳转的目标地址。当寄存器的bit[0]值为0时,目标地址处的指令为ARM指令;当寄存器的bit[0]值为1时,目标处的指令为Thumb指令。当寄存器为R15时,会产生不可预期的结果。

指令操作的伪代码

if ConditionPassed(cond) thenLR = address of the instruction after the BLX instructionT Flag = Rm[0]PC = Rm AND 0xFFFFFFFE

指令的使用

当Rm[1:0]=0b10时,由于ARM指令是字对齐的,这时会产生不可预料的结果。

如果觉得《刘帅嵌入式系统-BLX(2)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。