class test{
public static void main(String[] args){
int i =257 ;
byte b = (byte) i;
System.out.println(b);
byte b1 = -126; //整型
System.out.println(~b1); //~ 这个运算是省空间 得到的结果是125(内存上运算,存储再硬盘,加载到内存。)
System.out.println(2<<3);//快速算出2*8,利用左移位
System.out.println(100>>3);
}
}
//@1字节数-128的内存中的存储形式?如何推算的?
//计算机在内存中对数据的操作都是以补码来完成的,补码的概念:正数的补码与原码相同,负数的补码=反码+1
//最大正数为:01111111 = 1+2+4+8+16+32+64 = 127
//最小负数为:10000000除符号位取反加一:11111111 = -(1+2+4+8+16+32+64+1) = -128
//@2byte 的取值范围
//-128 ---127
//0是正数还是负数
//非正数非负数
来源:https://www.cnblogs.com/simly/p/9957255.html