ARM寻址方式中的立即数

发布于 2022-10-15 07:11:41 字数 456 浏览 21 评论 0

在《ARM体系结构与编程》一书中,

讲到了立即数方式----每个立即数由一个8位的常熟循环右移偶数位得到。

这样并不是每一个32位的常数都是合法的立即数,只有通过上面的方法构造得

到的才是合法的立即数。

下面是合法的立即数:

0xff,0x144,0xff0,0xff00

而下面的不是合法的:

0x101,0x102,0xff1

请问立即数是否合法怎么判断的啊?

另外:

0x3f循环右移(2*0xE)后怎么得到了ox3f0??

8位立即数循环右移又到底是怎么回事呢?

8位二进制循环右移后是不是仍然是8位二进制呢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

ぶ宁プ宁ぶ 2022-10-22 07:11:41

想了一天好像知道了可是为什么要有这种要求呢??

无言温柔 2022-10-22 07:11:41

前几天在这里讨论过这个问题,你往前翻几页找找

双手揣兜 2022-10-22 07:11:41

回复 3# amarant

    谢谢,找到了,讲的很详细

ヅ她的身影、若隐若现 2022-10-22 07:11:41

8bit数左移偶数位可以得到的就是合法的立即数。

长安忆 2022-10-22 07:11:41

回复 5# bitmilong

    谢谢!

情话墙 2022-10-22 07:11:41

回复 6# haomarlin

    左移?不是循环右移吗?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文