码迷,mamicode.com
首页 > 其他好文 > 详细

帮助你快速懂得心算十进制转二进制。(自创功法,理解就会,不会你砍我)

时间:2019-10-13 11:11:24      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:特殊   个人   帮助   练习   完全   body   次方   tab   The   

目录:

1.熟记二进制几个特殊数字。

2.找到二进制的转换规律。

3.转二进制的规则理解。

4.举例消化,一举例你就明白了。

~~----------------------------------------------------------------------------------------------------------------------------------------

前言:前面看不懂,可以先看举例。

----------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------

一:熟记二进制几个特殊数字。

----------------------------------------------------------------------------------------------------------------------------------------

问:为什么只记忆这几个数字?

答:因为IP地址使用二进制表示,范围是从00000000.00000000.00000000.00000000到11111111.11111111.11111111.11111111,而0在二进制和十进制中都是0,而二进制的11111111在十进制中就是255,所以IP地址就是从0.0.0.0到255.255.255.255。

十进制数字 二进制表示
128 1000 0000
192 1100 0000
224 1110 0000
240 1111 0000
248 1111 1000
252 1111 1100
254 1111 1110
255 1111 1111

----------------------------------------------------------------------------------------------------------------------------------------

2.找到二进制的转换规律。

----------------------------------------------------------------------------------------------------------------------------------------

十进制数字 规律
128 128+ 2^6 (64)=192
192 192+ 2^5 (32)=224
224 224+ 2^4 (16)=240
240 240+ 2^3 (8)=248
248 248+ 2^2 (4)=252
252 252+ 2^1 (2)=254
254 254+ 2^0 (1)=255
255 255是最后一个

你会发现规律,从128--225,每两个数之间的差是递减的:64-32-16-8-4-2-1.把这个记住。
----------------------------------------------------------------------------------------------------------------------------------------

3.转二进制的规则理解。

----------------------------------------------------------------------------------------------------------------------------------------
上面的都记住之后,我们就可以开始理解这个算法了。

规则1:

我们把8位的二进制,从右向左,对应数字 2的0次方(2^0) 至 2的7次方(2^7)。那么写出来就是:

1111 1111
128 -64-32-16 8-4-2-1

这个不难理解,将这个记住就ok。

规则2:

将X(0<X<256)转二进制,我们开始计算(128.64.32.16.8.4.2.1)哪些加起来等于X。我们只算加起来等于X,我们不算减法等于X,因为减法需要向前借一位,个人感觉比较复杂,不建议。

规则3:

在转化二进制中,128.64.32.16.8.4.2.1,这八个数,用到哪个,哪个对应的位置就写1,其他为0.
----------------------------------------------------------------------------------------------------------------------------------------

4.举例消化,一举例你就明白了。

----------------------------------------------------------------------------------------------------------------------------------------

先把规则1写下来,再开始看例子。

例1:

将 129转换成二进制。

算法:在128.64.32.16.8.4.2.1中选择数字加起来等于129.我们发现128+1=129.
我们知道128用二进制表示是 1000 0000(最开始就让你记忆的那些数字),再加上规则三,用到哪个数,哪个数就写1,因此我们得到答案是:1000 0001

例2:

将168转换成二进制。

算法:我们发现128+40=168,32+8=40,所以就是128+32+8=168,所以我们把对应的数字写成1,因此我们得到的答案是: 1010 1000

例3:

将244转换成二进制。

算法:我们发现我们已经知道240的二进制了:1111 0000,(之前记忆的),那么就是240+4=244.所以我们将240的二进制写出来,然后将4对应的位置写成1。因此我们得到的答案就是1111 0100.

例4:

将253转换成二进制。

算法:我们已经知道252的二进制了:1111 1100(之前记忆的),那么就是252+1=253,所以我们将1对应的位置写成1,得到答案1111 1101

例5:

将80转成二进制。

算法:64+16=80,将64和16这两位写成1,那么得到答案:0101 0000,最前面的0可以省略,所以我们的答案也可以写成101 0000

总结:我们发现我们转换X成二进制的时候,我们都是挑选最靠近X的数,而且已经是我们记忆过的数字,然后再进行加法运算。所以,只要记住前面的特殊数字和三个法则,稍稍练习,你就完全可以心算二进制。

帮助你快速懂得心算十进制转二进制。(自创功法,理解就会,不会你砍我)

标签:特殊   个人   帮助   练习   完全   body   次方   tab   The   

原文地址:https://blog.51cto.com/14558454/2441938

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!