进制基础:详解二进制、八进制和十六进制

数据来源 

1、二进制 

二进制特点:两种符号(0-1)逢2进一 加法 向高位进位  减法 向高位借位

数钱: 

( 0表示0 和日常的逻辑一样 )

1  ( 1表示1 和日常的逻辑一样 )

10 = 2(十进制)  => 1 + 1(逢2进1,向高位进位,2时为10)如果是八进制 8就是10,十六进制16就是10

11 =   => 10 + 1(3时为11)没有遇到2就是正常的加法

100 = 4  => 11 +1 (4时为100)

解析:二进位,1表示为1,2时为10,3表示为11,11+1,个位是2应进一,十位便是2,再进一,即为100

解剖:11 + 1 = 12  个位是2 应进 一  = 10(个位进十位数),原来的11中 的1已经拿来进位了还剩下10,最后是10 + 10 = 20,这时十位是2 ,再进一十位进百位)),2变成10,最终就是100

101 = 5  => 100 +1 (5时为101)

 110 = => 101 +1 (6时为101) (算法和上面的一样)

 111 = =>  110  +1 (7时为 111) 

 1000 = =>   111+1 (8时为 1000) 

解剖:111  + 1 = 112  个位是2 应进 一  = 10(个位进十位数),原来的111中 的1已经拿来进位了还剩下110,然后是110 + 10 = 120,这时十位是2 ,再进一十位进百位),20变成100,最后是100+100 =200,这时百位数是2再进一百位进千位最终就是1000

 1001 = =>    1000+1 (9时为 1001) 

 1010 = 10  =>    1001+1 (10时为 1010) 

 1011 = 11 =>    1010 +1 (11时为 1011) 

1100= 12 =>    1010 +1 (12时为 1100) 

 ...                       

进制转换:二进制快捷转换成十进制

比如:  

案例一:

1            1             0            0 

计算方法:

1 * x  + 1 * x   +  0* x  +  0 * x  

X = 从右到左依次从2^0,0不断递增

也可以直接使用位权的方式:

2进制的位权: ... 128    64     32      16       8        4        2         1 (就是 2^0 ... 2^7 )

最终:1100 转换为十进 =>   1* 8   +  1*4   + 0*2   +  0*1 = 8 +4 +0 +0 = 12

案例二:

1        1        1        1        1        1        1        1

128    64     32      16       8        4        2         1    这一行数字全部加起来就是 255 ,这是IP地址取值的最大值

如果把32之后的数字相加:16 + 8 + 4 + 2 + 1  = 31 ,刚好是 32 -1(后一位数字减一),从这里得得知 上面的128 + 64 + ... + 1 = 128^2 -1 ,所以我们只需计算128^2 -1  = 255 ,这是IP地址的极限数字,因为IP地址的2进制是由32位数字组成,分为4段每一段是8位数字,8个1的极限是255

2、十进制

十进制特点:逢十进一    10种符号(0-9)

数钱:

0

1

2

3

...

9

10

11

12

...

进制转换:十进制快捷转换成二进制

比如: 190 转换为二进制

128    64     32      16       8        4        2         1

1         0       1        1         1       1        1         0

解释:128 + 64 = 192 > 190 所以 64 下面为 0 ,128 +32 = 160 < 190 所以 32 为 1,160 + 16 =176 < 190 所以 16为 1 ,176 + 8= 184 < 190 所以 8为 1 ,184  + 4 = 188 < 190 所以 4为 1,188  + 2 = 190  = 190 所以 2为 1,因为已经相等,后面的就都是 0,最终190转为二进制就是:10111110

3、十六进制

十六进制特点:16种符号(0-9,A-F)  逢16进一

数钱:  

0

1

2

3

...

9

A   =  10(十进制)

...

F  = 15   

10 = 16   =>  逢十六进一 ,十六进制15+1 就成了十进制的16,也就是十六进制的10

11 = 17

...

1F

20

进制转换:十六进制快捷转换成二进制

比如:(BC)16         16进制的书面写法

首先我们可以把BC拆分为B、C,一个一个来转换 ,按照上面的知识 B = 11 ,C = 12

11 转换为2进制

                  8        4        2         1

二进制为:1        0        1         1       这里的算法和上面的一样,或使用除2取余数的方法也行

12 转换为2进制

                  8        4        2         1

二进制为:1        1        0         0  

最终:(BC)16  的二进制是:1011 1100  (11 + 12 的2进制)

可以使用计算器验证(一般很少手动计算,有条件直接用计算器):

 计算机的网卡的MAC地址就是16进制,这个地址不能更改,了解就好。

查看MAC地址,打开命令行cmd -> 输入 ipconfig  /all

 4C-ED-FB 是 Realtek 公司注册的,后面6位是该厂家生产该网卡的编号,注意这个地址每一台计算机都是唯一的全球唯一,不可更改,虽然有些软件可以改,但是那不是真正的更改,只是蒙蔽网卡,一些黑客可以通过MAC地址定位你的电脑进行攻击。

进制转换:二进制快捷转换成十六进制

比如: 10010011 转换为16进制

方法:4个4个一组,2进制从低位往前数取4位,不够就补(如果是IP地址不够这种情况不存在),然后分别转换为10进制,再拼接,就是16进制。

 0011 为一组 ,十进制为 3   ,1001 为一组,十进制为 9 ,最后拼接: 10010011的16进制是93 

4、八进制 

八进制特点:8种符号(0-7)  逢8进一

数钱:  

0

1

...

7

10  = 8   => 7+ 1 =8 进一 = 10

11

...

17  = 15(十进制)

20

进制转换:十进制快捷转换成八进制

如:(88)10  转换为八进制

8进制的位权是:64  8 1  (8^0 ... 8^2)

                           1    3   0

解释:64 * 1= 64 < 88 所以 64 下面为 1,因为*2就大于88了,64 + 8 *3  = 88 = 88 ,因为已经相等,后面的就都是 0,最终88转为八进制就是:130

进制转换:八进制快捷转换成十进制 

如:(130)8 转换为十进制

                           1    3  0

8进制的位权是:64  8  1  (8^0 ... 8^2)

                            64 +24  + 0 = 88

解释:1* 64 =64,3 *8 =24,0*1=0 最后相加:88。最终130转为十进制就是:88

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狗蛋的博客之旅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值