JAVA复习:8进制与16进制

一、八进制

每3位二进制作为一个单元,最小数是0,最大数是7,共8个数字,这就是八进制。

例如:97:01100001拆分:    01 100  001—>  1+4+1即 十进制为97的数值用8进制表示为141

(1*8^2+4*8^1+1*8^0)

二、十六进制

每4位二进制作为一个单元,最小数是0,最大数是15,共16个数字,一次用0~9 ABCDEF代表 就是十六进制。

例如:97:01100001拆分:0110 0001—> 6 + 1 即 十进制为97的数值用16进制表示为61

例如:250:11111010拆分: 1111 1010—>F(15)+A(10)即十进制为250的数值用16进制表示为FA

三、2进制、8进制和16进制在程序中的书写

二进制:0B或者0b开头 例如0B01100001(97)

八进制:0开头 例如:0141(97)

十六进制:0X或者0x开头 例如:0X61(97)

四、进制间的转换

1、八进制转换成十进制:

依次加权×8的幂次例如:141(8进制)=1*8^0+4*8^1+1*8^2=97;

2、八进制转换成二进制:

把各个单位的数拆开单独当十进制写成二进制形式并用三位表示例如:141(8进制)=1 + 4 + 1=001 + 100 + 001 = 001100001再按照四的倍数添0删0即0110 0001

3、十六进制转换成十进制:

依次加权×16的幂次例如:61(16进制)=1*16^0+6*16^1=97;

4、十六进制转换成二进制:

把各个单位的数拆开单独当十进制写成二进制形式并用四位表示例如:61(16进制)

6 +1 =0110 0001即01100001

你可能感兴趣的:(java)