您的位置 首页 软件

ARM 汇编中的当即数

ARM汇编中对汇编指令被编码成32bit的机器码,其中对于立即数寻址的指令,其机器码构成如下:3128

ARM 汇编中对汇编指令被编码成 32bit 的机器码,其间关于当即数寻址的指令,其机器码构成如下:

31 28 | 27 26 25 | 24 21 | 20 | 19 16 | 15 12 | 11 8 | 7 0 |

cond | 0 0 1 | opcode | S | Rn | Rd | rotate_imm | immed_8 |

规则 0~11 位表明 shift operand,表明当即数时, #immediate 由这两部分构成:

immediate = immed_8 >> (rotate_imm*2)

也就是说只要满意上述构成条件的当即数才是合法的操作数,那么以下当即数

0x101,0x102,0xFF1,0xFF04,0xFF003,0xFFFFFFFF,0xF000001F

都是不合法的!!编译器编译的时分会呈现如下正告

error A0092: no immediate rotate operand can be created

看来想完成上面的一个当即数,只能经过好几条指令来完成了!

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/ruanjian/275675.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部