进制转换

进制也就是进位计数制,是人为定义的带进位的计数方法,几进制的含义就是逢几进一。

进制基数前缀示例
二进制0b 0B0b11 --> 2+1 = 3
八进制0o 0O 00o11 --> 8+1 = 9
十进制无前缀11 = 11
十六进制0x 0X0x11 --> 16+1 = 17

十进制:0 1 2 3 4 5 6 7 8 9 ==> 10

二进制:0 1 ==> 0b10

八进制:0 1 2 3 4 5 6 7 ==> 0o10

十六进制:0 1 2 3 4 5 6 7 8 9 a b c d e f ==> 0x10

不同语言中的数值常量表示差异
- JavaScript/Python:八进制数值的前缀可以为 0 0o 0O 三种皆可。
- Java/C:八进制数值只能用一种前缀 0 ,不能用 0o 0O ,否则会报错

计算机底层最终只能够识别0和1,不论多么复杂的表达式都只会进行二进制加法运算。

1、二进制与八进制

一位8进制对应3位2进制

二进制:0b  1 010 010 100 101 010
八进制:0   1   2   2   4   5   2    

2、二进制与十六进制

一位16进制对应4位2进制

二进制:  0b  1010 0101 0010 1010
十六进制:0x     a    5    2    a

3、二进制与十进制

二进制:0b  1010010100101010
十进制:    2^15 + 2^13 + 2^10 + 2^8 + 2^5 + 2^3 + 2^1
          32768 + 8192 + 1024 + 256 +  32 +  8  +  2
	   =  42282
十进制:    42282
二进制:    42282/2    0
           21141/2    1
           10570/2    0
            5285/2    1
            2642/2    0
            1321/2    1
             660/2    0
             330/2    0
             165/2    1
              82/2    0
              41/2    1
              20/2    0
              10/2    0
               5/2    1
               2/2    0
               1
      从下往上连接起来得到:
      0b    1010010100101010

4、十进制与八进制

十进制:    42282
八进制:    42282/8    2
    	   5285/8    5
            660/8    4
             82/8    2
             10/8    2
             1
      从下往上连接起来得到:
      0      122452
八进制:0   122452
十进制:    1*8^5 + 2*8^4 + 2*8^3 + 4*8^2 + 5*8^1 + 2*8^0
           32768 + 2*4096 + 2*512 + 4*64 +  5*8  +   2
	    =  42282

5、十进制与十六进制

十进制:    42282
十六进制:  42282/16    10
           2642/16    2
            165/16    5
             10
      从下往上连接起来得到:
      0x      a52a
十六进制:0x  a52a
十进制:      10*16^3 + 5*16^2 + 2*16^1 + 10*16^0
             10*4096 + 5*256 + 2*16 + 10
	      =  42282

6、八进制与十六进制

八进制:  0       1    2   2   4   5   2  
二进制:  0b    001  010 010 100 101 010
二进制:  0b         1010 0101 0010 1010
十六进制:0x            a    5    2    a
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值