不管位移多少位,结果都是-1

2019-07-17 13:08发布

在做压缩算法里的量化操作的目的为了生成更多的0,以便下一步的压缩操作,

但我发现当执行数值小的负数位移操作时,不管位移多少位,结果都是-1
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
jiahy
1楼-- · 2019-07-18 09:03
为什么执行时间一下就变的这么大了呢?
heweibig
2楼-- · 2019-07-18 14:11
量化的目的是把权值小的数组元素尽量的归0
jiahy
3楼-- · 2019-07-18 20:04
除法操作难道这么费时间?底层汇编对除法操作是怎么操作的?
zhaoxqi
4楼-- · 2019-07-19 00:16

比如-3>>6 = -1用操作
i = 1 <<6;
-3/ i =》 0;代替;
上面意思是, i = 64,(即1<<6), 然后-3 / 64 是等于0(这是除法操作的结果)
,而采用位移操作-3>>6是等于-1,不能等0
jiahy
5楼-- · 2019-07-19 01:12
唉,还是没有什么结果,算了,先结贴吧,多谢大家啦
zhangmangui
6楼-- · 2019-07-19 05:20
没看懂啊

一周热门 更多>