java_基础位运算

本文深入探讨了Java中的位运算,包括原码、反码和补码的概念。正数的原码、反码和补码相同,而负数的反码是原码除符号位外按位取反,补码则是反码加1。在计算过程中,Java使用补码进行运算。此外,还介绍了算术左移和右移以及无符号右移的区别。通过理解这些基础知识,可以更好地掌握Java中的位操作和数值处理。
摘要由CSDN通过智能技术生成

java_基础位运算


#原码、反码、补码
对于有符号而言:
1、二进制的最高位符号位:0表示正数,1表示负数 (看最左边的那一个数)
2、正数的原码、反码、补码都一样
3、负数的反码 = 它的原码符号位不变,其他位取反
4、负数的补码 = 它的反码 +1 , 负数的反码 = 负数的补码 -1
5、0的反码,补码都是0
6、在java中没有无符号数 (JAVA中的数都是有符号的)
7、在计算机运算的时候,都是以补码的方式来运算
8、当我们看运算结果的时候,要看他的原码

/*
 正数2的原码:
  00000000 00000000 00000000 00000010
负数2的原码:
  10000000 00000000 00000000 00000010    
  // 最左边的数代表的是正数还是负数
 
 -2的反码:  11111111 11111111 11111111 11111101
 -2的补码:  11111111 11111111 11111111 11111110
 */

#位运算
算术右移 >> :低位溢出,符号位不变,并用符号位补溢出的高位
算术左移 <<:符号位不变,低位补0
" >>> " 逻辑右移,也称为 无符号右移,运算规则 ( 低位溢出,高位补0 )
注意:无 “ <<<符号”``

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值