规则1: 我们把8位的二进制,从右向左,对应数字 2的0次方(2^0) 至 2的7次方(2^7)。 那么写出来就是:
1111 1111128 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.
先把规则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的数,而且已经是我们记忆过的数字,然后再进行加法运算。所以,只要记住前面的特殊数字和三个法则,稍稍练习,你就完全可以心算二进制。