java进制

/*
不同进制的数据表现:
二进制:由0,1组成。以0b开头。
八进制:由0,1,...7组成。以0开头。
十进制:由0,1,...9组成。默认整数是十进制。
十六进制:由0,1,...9,a,b,c,d,e,f(大小写均可)组成。以0x开头。
*/
class JinZhiDemo {
public static void main(String[] args) {
System.out.println(100); //十进制

System.out.println(0b100); //二进制
System.out.println(0100); //八进制
System.out.println(0x100); //十六进制
}

}





1:得到下面数据的十进制值:
0b10101
=1*2^4 + 1*2^2 + 1*2^0
=16 + 4 + 1
=21


0123
=1*8^2 + 2*8^1 + 3*8^0
=64 + 16 + 3
=83
0x3c
=3*16^1 + c*16^0
=48 + 12
=60

2:得到下面数据的二进制,十进制,十六进制
52分别得到二进制,十进制,十六进制


得到二进制:
52 / 2 = 26 0
26 / 2 = 13 0
13 / 2 = 6      1
6  / 2 = 3      0
3  / 2 = 1      1
1  / 2 = 0      1

0b110100

得到八进制:
52 / 8 = 6 4
6  / 8 = 0      6

064

得到十六进制:
52 / 16 = 3 4
3  / 16 = 0 3

0x34

3:有符号数据表示法的练习
A:已知某数X的原码为10110100B,试求X的补码和反码。

符号位 数值位

原码: 10110100

反码: 11001011

补码: 11001100

B:已知某数X的补码11101110B,试求其原码。

符号位 数值位

补码: 11101110

反码: 11101101

原码: 10010010

4:

你可能感兴趣的:(java,二进制)