EDA365电子论坛网
标题:
ARM跳转指令b跳转指令范围为什么为正负32M???
[打印本页]
作者:
littlestupid
时间:
2019-7-11 16:52
标题:
ARM跳转指令b跳转指令范围为什么为正负32M???
ARM跳转指令b跳转指令范围为什么为正负32M???
: n2 _+ h* w0 o, T$ G7 k
( e. x, N. A7 @0 _0 g
1 ^- t ~7 z/ s5 g9 W5 u
# F" X' P& ~. ^' W0 j: P
作者:
xixihahaheihei
时间:
2019-7-11 17:12
不知道可不可以这样理解:因为ARM中要求指令是字对齐的,也就是32位对齐,指令起始地址末尾两位1:0为00,而寄存器R15程序计数器pc每次跳转地址都要加4,保证了跳转的指令末两位为00,而23:0并不保证这个规律,所以就将这24为左移2位,也就是在末尾加两个0变成了26位,此时其中一位为符号位所能表示的跳转范围就变成了正负32M了
" K7 x9 E* N( [3 f6 P5 _! C; }
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2