进制
** 0b开头 二进制(零b)
0开头 八进制
0x开头 十六进制**
进制转换
1.二转十进制
从最低位开始(最右边),每个位数提取出来,乘以2的(位数-1)次方,然后求和,位数从1开始
2.八转十进制
从最低位开始(最右边),每个位数提取出来,乘以8的(位数-1)次方,然后求和,位数从1开始
3.十六转十进制
从最低位开始(最右边),每个位数提取出来,乘以16的(位数-1)次方,然后求和,位数从1开始
例:二进制转十进制
0b1011 = 12(1-1) + 12(2-1) + 02(3-1) + 12(4-1)=11
4、十进制转二进制
十进制数字除以2取余数,将余数倒过来就是二进制数
5、十进制转八进制
十进制数字除以8取余数,将余数倒过来就是八进制数
6、十进制转十六进制
十进制数字除以十六取余数,将余数倒过来就是十六进制数
7、二进制转八进制
从后开始,三位一组转成十进制然后相加
8、二进制转十六进制
从后开始,三位一组转成十进制然后相加
例:ob11010101, 后四位0101为5,1101为13,13对应D,十六进制数为0xD5**
原码、反码、补码
1.二进制的最高位是符号位,即最左边的数字,0表示正数,1表示负数
2.正数的原码、反码、补码都一样,三码合一
3.负数的反码:原符号位不变,其余取反
4.负数的补码:负数的反码+1; 负数的反码:负数的补码-1
5.0的反码、补码都是0
6.java里面没有符号数,即java中的数都是有符号的
7.在计算机运行时,都是以补码的方式来运算的,在看运算结果时,都是以原码来显示的