java针对整数常量,提供了4种表现形式
二进制:由0,1构成,逢2进1,由0b开头
八进制:由0,1,2,3,4,5,6,7构成,逢8进1,由0开头
十进制:由0,1,2,3,4,5,6,7,8,9构成,逢10进1,java中整数默认是十进制的
十六进制:由0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f构成,逢16进1,由0x开头
进制之间的转换:
1、其他进制转十进制?
(十进制)12345 -> (十进制)12345
12345 = 10000 + 2000 + 300 + 40 + 5
= 1*10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0
= 10000 + 2000 + 300 + 40 + 5
= 12345
规律:系数*原进制的指数次幂的和
(二进制)100 -> (十进制)4
100 = 1*2^2 + 0*2^1 + 0*2^0
= 4
2、十进制转其他进制?
规律:除基取余数,知道商为0,余数反转
(十进制)64 -> (八进制)
64/8=8....0
8/8=1.....0
1/8=0.....1
余数反转:0100
3、十进制与二进制之间的快速转换 8421码
(二进制)10100 -> 1*2^4 + 1*2^2 = 20(十进制)
一个字节:8位
1byte = 8bit
1kb = 1024byte
1mb = 1024kb
1gb = 1024mb
1tb = 1024gb
1pb = 1024tb
(二进制) 1 1 1 1 1 1 1 1
(十进制)128 64 32 16 8 4 2 1
4、其他进制与其他进制(举例:二进制->八进制)
做法1:先转10进制,再转八进制
做法2:从右向左,每3位一组合,最左边的够,用0补齐,算每一组合的进制结果,拼接
10100(二进制) => 20(十进制) => 24(八进制)
十进制和二进制的快速转换
8421码
100转成二进制
101101转成十进制
二进制和八进制,十六进制如何转换
以十进制作为桥梁
二进制到八进制 3位组合
100110
二进制到十六进制 4位组合
100110
注意:
1、默认情况下,idea输出的结果是转化成十进制的结果
2、学习进制的目的是为了学习二进制与十进制的关系,因为2进制是计算机的语言,而10进制是我们人类的语言