跳转指令
B
BL
BLR
BR
B
直接跳转,其许可的形式有
形式一:
B <label>
label:
code
形式二:
B 0x1234
其指令格式的机器语言为
![在这里插入图片描述](https://img-blog.csdnimg.cn/f6a27d2a0f2149228a2f78ad882eed28.png)
其中,imm264为要跳转的地址的相对地址,即,要跳转的地址为当前PC+imm264,但是这个相对地址的寻址范围被限定在+/-128MB范围内。
BL
BL指令中的L可以认为是在跳转前,将前值的PC指针+4存放起来的意思,主要是为了返回跳转前的位置继续执行。
![在这里插入图片描述](https://img-blog.csdnimg.cn/f42163e495184ff18ab124f83a6c843b.png)
跳转前会把PC+4存入X[30]中。
BR、BLR
分别对应于B指令和BL指令,只不过跳转的地址存放在通用寄存器中,这里的R代指寄存器。
![在这里插入图片描述](https://img-blog.csdnimg.cn/22463c228c10410f9bd10aae6f4980a3.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/69da2b95882d4f6d9a61ac5ee94cdf6d.png)