找回密码
 注册
关于网站域名变更的通知
查看: 408|回复: 2
打印 上一主题 下一主题

ARM数据处理指令中的立即数问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-4-22 14:19 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
CPU的手册上,数据处理指令格式如上:
立即数是Operand2部分,占据了机器码的低12位。其中最低8位称为immed_8,高4位称为rotate_imm。
立即数的数值计算方法:=immed_8 循环右移 (2 * rotate_imm)。
就是说,一个立即数0x56000000,循环左移,如果可以得到一个用8位位图表示的数,则该立即数0x56000000是一个合法的立即数;否则,该立即数不合法。
高四位:2^4=16,要想表示移位范围为0-31,则每次最少移动2位,即,右移的最小单位为2.这样,2*16就可以表示最多32位的移动。

( y% h- }; S) }, I5 f' H2 g+ o

该用户从未签到

3#
发表于 2021-4-23 18:09 | 只看该作者
我就看看,不说话
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 13:39 , Processed in 0.140625 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表