二进制
满二进一 只有0和1 用0b或者0B开头
十进制
满10进一 0-9
八进制
满八进一 0-7 以数字0开头
十六进制
0-9和A(10)-F(15),满16进1,以0x或者0X开头表示,此处a-f不区分大小写
例:int n1=0b1010;//二进制 10
int n2=1010;//十进制 1010
int n3=01010;//八进制 520
int n4=0x10101;//十六进制 65793
进制的转换(基础!!)
二进制转换成十进制
方法:从最低位(右边)开始,将每个位的数提取出来,乘以2的(位数-1)次方,然后求和
0b1011=1*(1-1)次方+1*2的1次方+0*2的2次方+1*2的3次方=11
八进制转十进制
方法:从最低位(右边)开始,将每个位数提出来,乘8的(位数-1)次方,然后求和
十六进制转十进制
方法:从最低位(右边)开始,将每个位数提出来,乘16的(位数-1)次方,然后求和
十进制转二进制
方法:将该数不断除以2,直到商为0,然后把每步的余数倒过来就是对应的二进制
十进制转换成八进制
方法:将该数不断除以 8,直到商为 0 为止,然后将每步得到的余数倒过来,就是对应的八进制
十进制转换成十六进制
规则:将该数不断除以 16,直到商为 0 为止,然后将每步得到的余数倒过来,就是对应的十六进制。
二进制转换成八进制
规则:从低位开始,将二进制数每三位一组,转成对应的八进制数即可
二进制转换成十六进制
规则:从低位开始,将二进制数每四位一组,转成对应的十六进制数即可。
八进制转换成二进制
规则:将八进制数每 1 位,转成对应的一个 3 位的二进制数即可。
十六进制转换成二进制
规则:将十六进制数每 1 位,转成对应的 4 位的一个二进制数即可。
原码、反码、补码(重点)
对于有符号的而言(最高位)
1.二进制的最高位是符号位:0表示正数,1表示负数(汉字一和负号-很像,可以联想)
2.正数三码合一
3.负数的反码=原码符号位不变其他取反
4.负数补码:反码+1
5.0的反码补码都是0
6.java中的数都有符号
7.计算机运算时,都以补码的方式运算!!!
8.看运算结果看原码