本人有个32位数m,前五位放着想要的数a,如果a=1则可以使用(M>>27)&0x1而a=2则可以用(M>>28)&0x1问题是a=3改怎么表达呢?a=4则可以用(M>>29)&0x1急用,求各位位运算高手帮忙解决,谢谢
复杂的位运算
答案:2 悬赏:60 手机版
解决时间 2021-05-10 13:03
- 提问者网友:美人性情
- 2021-05-09 23:01
最佳答案
- 五星知识达人网友:人類模型
- 2021-05-10 00:00
直接用按位与操作
比如要提取前5位
1111 1000 = 0xF8
你就n = (m & 0xF8000000) >> 27
n里保存的就是m的高5位了
比如要提取前5位
1111 1000 = 0xF8
你就n = (m & 0xF8000000) >> 27
n里保存的就是m的高5位了
全部回答
- 1楼网友:往事埋风中
- 2021-05-10 00:26
既然前5位是a,那么
(M >> 27) & 0x1F 即可获得a值
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯