Java中负数的移位操作——右移

负数的右移操作还是比较麻烦的,以下是一个例题,是以自己的见解注释的,如有错误,欢迎指正

十进制数-123右移5位结果的二进制表达形式。

-123     1. --- 1111 1011             1000 0 1 00 --- 6. 末位+1,类似负数的的反码+1得到补码

             2. 反码 --- 1000 0100              1000 0011 --- 5. 对右移操作后的数取反

             3. 补码--- 1000 0101 >> 5    1 111 11 00 --- 4. 右移操作后,左端补1,符号位不变

                由上可得,-123>>5 = -4

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值