1 十进制,二进制,八进制,十六进制
十进制来源于人的十个手指,二进制来源于中国的易经,进制越大,位数越短。
1 byte = 8 bit
1 k = 1024b
1 m = 1024 k
1 g = 1024m
1 t = 1024 g
2 不同进制的表现形式
3 任意进制转换十进制
这里请自己把上面的代码自己推算结果
4 十进制转换为任意进制
十进制转换任意进制的原理是拿到一个十进制数,除想要转换的进制数,得到的余数,将所有余数从下往上组成一个几进制数
这里以例子说明:比如我有一个十进制数4,想要将他转换成2进制,4除2得2余0,2除2得1余0,1除2得0余1,将余数从后往前则为100,即我们得到的二进制数为0b100.
再比如我们有一个十进制数64,想要把它转换为8进制,64除8得8余0,8除8得1余0,1除8得0余1,所以八进制为100,即0100.
口诀:除基倒取余
5 关于其他进制的转换
运用8421口诀,先转为2进制,再转换为八进制:比如十进制60,它的二进制位111100,我们三个数字化一组,三个数字化一组,就是111和100,那么根据8421可得,111就是4+2+1=7,100就是4,即八进制为74.如果想要把它转换为16进制,就4个数字化一组,也就是0011和1100,根据8421就是2+1=3,8+4=12就是十六进制的c,所以它的16进制就是3c。
这里啰啰嗦嗦说了一大堆,其实只需要知道两个方法,这里再次做一下总结:
(1)系数乘基数幂,也就是x进制转10进制,为系数乘x的y次方,y从右往左从0开始。
(2)除基倒取余,10进制转x进制,不断除x,取余数。
6 原码反码补码
7 java数据类型
给long类型赋值需要加L,如 long x = 888888888L;
给float类型辅助需要加F,如float y = 12.3F;
那么为什么要这样呢?因为整数默认的是int类型,小数默认的是double类型,所以整数放入long,有可能整数太大,浮点数放入float,有可能丢失精度