//2的30次方1073741824,2的31次方2147483648
//int数很容易理解,最大数是31个1,1111111 11111111 11111111 11111111,那么就是2的30次方,加起来就是2的31次方减去1,2147483647
//最小的数就是最开始一个1,因为1代表符号位数10000000 00000000 00000000 00000000,-2147483648,算上0,int一共可以表示2的32次方个数
int t = 2147483647;
int p = t + 1;
System.out.println(p);
//bit related
int x = 2147483647;
System.out.println("x + 1 : " + (x + 1));
System.out.println(Integer.toBinaryString(x));
System.out.println(x + 1);
System.out.println(Integer.toBinaryString(x + 1));
System.out.println(Integer.toBinaryString(x + 1 + 1));
byte byte1 = 127;
System.out.println(msTest.toBitString(byte1));
int y1 = 1;
System.out.println(y1 << 1);
System.out.println(y1 >> 1);
int y2 = -2147483648;
System.out.println(y2 << 1);
System.out.println(y2 >> 1);//保留符号 -1073741824,有符号右移,即保留符号位,
Bitwise基础相关
最新推荐文章于 2024-01-16 11:02:14 发布
本文深入探讨了位操作的基础知识,包括位运算符如AND、OR、NOT、XOR的使用,以及位移操作在二进制数处理中的应用。通过实例解析了如何利用位操作进行数据的高效存储和计算,同时还讨论了它们在计算机科学和编程中的重要作用。
摘要由CSDN通过智能技术生成