二进制_十进制_十六进制简单算法[精华]
二进制,十六进制,十进制,八进制
1(二进制转十进制, 111 第一位的1 他就是一个1 不用管他, 好,上一位, 这
位的1就要乘2了,因为是二进制,除了个位数,上位的都是乘着2上去的。
那就是 1+1*2+1*2*2=7
好比十进制的 523 ,个位3不管,2这一位就要乘以10了(后几位就算是0也要乘,
乘完以后还是0),5这一位又要乘以10, 就是3+2*10+5*10*10=523。
2(二进制转十六进制, 这个就是一个半字节(也就是4位)的二进制 就是 一个十六进
制的数而已。
其它的跟二进制转十进制一样。 如 11011 4位分开, 0001 1011,
0001 十六进制 额 他就是1了, 1011 十进制是11 十六进制的B,
结果1B ,还好不是2B。 这两个4位 是互不影响的, 得出数 拼到一起 OK.
3(十进制转二进制, 这个其实围绕核心有两种计算方法。 一种就是除法,除于2除于2
的那种,跟二进制转十进制反过来了。 如 55 除 2 得27 余1 , 1就是个位了,
没有余的话 那就是0了, 27除2 得13 余1, 13除2 得6 余1 ,6除2得3余0,
3除2 得1 余1 , 结果 110111.
第二种是一种减法,
128 64 32 16 8 4 2 1
10000000 1000000 100000 10000 1000 100 10 1
这几个数字是二进制8位,也就是一个字节, 每一位对应十进制的数字。
如,55 看好位置, 比32大64小, 二进制最高位在32那边了,
55-32=23 好 100000 有了,23-16=7 10000 有了, 下面很明显8不够,跳过,
7-4=3 100 , 3-2=1 10 ,1 那就是1了,不用减了 正好一个1。
100000+10000+100+10+1=110111。 下面就自己练练吧, 熟能生巧。
4(十进制转十六进制, 这个跟十进制转二进制差不多,用除的那种。
如, 653 除16 得40 余13 13也就是D , 第一位是个位的 D。
40 除16 得 2 余 8 8 他就是8了, 第二位是8,
2除16 得0 余2 当然没必要的, 第三位是2.
结果 28D
5( 十六进制 转 二进制, 这个跟上面二转十六的那个是相通的,
记住,4位是一个十六进制的数 如,1111=F 。
1B 四位分开 1 就是0001了 B是1011 11011 。
概念什么的,再看
书
关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf
研究研究吧。
6( 十六进制 转 十进制, 乘16, 如 23D 拆开乘十六
从个位开始吧, D 也就是十进制的 13 , 3在上位 要乘以16 3*16=48,
2在更上位 2*16*16=512。 512+48+13=573。 结果很明朗啊,化整为零,各个
击破。
7( 十进制 转 八进制, 除8 跟 十进制 转 十六进制 二进制一样。
8( 八进制 转 十进制 乘8 跟 十六进 十进制 转 十进制一样。
十进制不管转成十六进制、二进制还是八进制, 都是除的。 而且顺序一样
别的转到十进制都是乘的。 顺序一样
上面这些的方法其实道理都一样, 无外乎 乘 过来 除 过去。
十六进制 2BD 200=2*16*16 B0=B*16 200+B0+D=2BD 换成十进制也就是 2*16*16=512 + B*16=11*16=176 + D=13 =701
4 3 2 5 二进制 101011 1*2+0*2+1*2+0*2+1*2 + 1 = 101011 换成十进制就是 不写了
因为我犯过一个傻毛病 , 为什么乘完以后就成十进制了, 原来就是因为刻意要让他变成十进制, 每一次乘都是十进制的结尾, 所以才会成十进制啊。