Java基础——第四节(进制)

进制的四种表示方式:

1.二进制:0,1,满2进1,以0b或0B开头

2.十进制:0~9,满10进1

3.八进制 : 0~7,满8进1,以数字0开头表示

4.十六进制:0~9及 A(10)~F(15),满16进1,以0x或0X开头表示

        int a = 0b1010;
        int b = 1010;
        int c = 01010;
        int d = 0x10101;
        System.out.println("a="+a);
        System.out.println("b="+b);
        System.out.println("c="+c);
        System.out.println("d="+d);

结果:

 a=10
b=1010
c=520
d=65793

进制的图示
十进制十六进制八进制二进制
0000
1111
22210
33311
444100
555101
666110
777111
88101000
进制的图示(序图)
99111001
10A121010
11B131011
12C141100
13D151101
14E161110
15F171111
16102010000
17112110001

 其他进制转十进制:

二进制转十进制:

  • 0b1011=1*2的(1-1)次方+1*2的(2-1)次方+0*2的(3-1)次方+1*2的(4-1)次方
  •             =1 + 2 + 0 + 8
  •             = 11

 八进制转十进制:

规则:从最低位(右边)开始,将个位上的数提取出来,乘以8的(位数-1)次方,求和

  • 0234 = 4*8^0 + 3 * 8^1 + 2 * 8 ^ 2 
  •          = 4 + 24 +128
  •          = 156

 十六进制转十进制:

规则:从最低位(右边)开始,将个位上的数提取出来,乘以16的(位数-1)次方,求和

  • 0x23A = 10*16^0 + 3 * 16^1 + 2 * 16 ^ 2 
  •           = 10 + 48 + 512
  •           =   570

十进制转其他进制:

十进制转二进制:

规则:将该数字不断除以2,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制

  • 34 =0B100010

 

十进制转八进制:

规则:将该数字不断除以8,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制

十进制转十六进制:

规则:将该数字不断除以16,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制

 二进制转换八进制,十六进制

二进制转八进制:

规则:从低位开始,将二进制数每三位一组,转成对应的八进制即可

  • 0b11(3)010(2)101(5) =>0325

二进制转十六进制:

规则:从低位开始,将二进制数每四位一组,转成对应的八进制即可

  • ob1101(D)0101(5) => 0xD5

二进制转换八进制,十六进制

八进制转换二进制:

规则:将八进制每一位,转换对应的一个3位的二进制数即可(不够4位要补0,或者去0)

  • 02(010)3(011)7(111) = 0b000010011111

十六进制转换二进制:

规则:将十六进制每一位,转换对应的一个4位的二进制数即可(不够4位要补0,或者去0)

  • 0x2(0010)3(0011)B(1011) = 0b001000111011

 原码,反码,补码

1.二进制的最高位是符号位:0表示正数,1表示负数

2.正数的原码,反码,补码,都一样

3.负数的反码 = 它的原码符号位不变,其它位取反

4.负数的补码 = 它的反码+1,负数的反码 = 负数的补码-1

5.0的反码,补码都是0

6.在计算机运算时,以补码的方式来运算

7.当我们看运算结果,要看他的原码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值