二进制 八进制 十进制 十六进制的相互转换(精简总结)

以前看到的都是铺垫这术语那术语的,看了半天,还不知道怎么处理。这里就根据各类文章和本身的理解总结一小下下,  不必定准确,省略一些概念等繁琐的陈述,直接上结论spa

1.二进制转八进制:以小数点为分界线,各自向左向右 每3位组成一组,不够位数的自动向高位或向低位补0,而后把每组的数字转换为八进制数就能够了,小数点的位置不变。二进制

eg:(1101110.1011)2 分组后    (001)(101)(110).(101) (100) 而后把每组换算成8进制数就能够了(红色为补的0 (156.54)8总结

逆向思惟:八进制转二进制  把每一位八进制数变为3位二进制数就好了(别说你不会啊!~)(小数点的位置不变)co

 

2.二进制转十进制:按权相加法,即将二进制每位上的数乘以权,而后相加之和便是十进制数 思维

eg: (1101110.1011)2 变成加法  26+25+0+23+22+21+0 . 2-1+0+2-3+2-4   = 64+32+0+8+4+2+0 . 0.5+0+0.125+0.0625  =110.6875      (红色为小数点
术语

 

3.二进制转十六进制:以小数点为分界线,各自向左向右 每4位组成一组,不够位数的自动向高位或向低位补0,而后把每组的数字转换为十六进制数就能够了,小数点的位置不变。数字

eg:(1101110.1011)分组后 (0110)(1110).(1011)而后把每组换算成16进制数就能够了红色为补的0)(6E.B)16background

逆向思惟:十六进制转二进制  把每一位十六进制数变为4位的二进制数就好了(你会的!~)(小数点的位置不变)错误


4.十进制转二进制:(恩!~这个有点麻烦!)
文章

分为 整数部分小数部分

1)整数部分:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。(好长一句,就是不断的除2,余数留着,商继续除,一直除到商为0,把余数反向连起来就OK了)

eg:110

      商     余数

 

110/2        55     0

55/2          27    1

27/2         13     1

13/2         6       1

6/2          3        0

3/2          1        1

1/2         0        1       (这步记着哦~)

此时商为0 了,把余数反向连起来1101110  (注意啊,跟示例2整数值是否一致呢。。。。!)

2)小数部分:乘2取整法,即将小数部分乘以2,而后取整数部分,剩下的小数部分继续乘以2,而后取整数部分,剩下的小数部分又乘以2,一直取到小数部分 
为零为止。若是永远不能为零,就同十进制数的四舍五入同样,按照要求保留多少位小数时,就根据后面一位是0仍是1,取舍,若是是零,舍掉,若是是1,向入一位。换句话说就是0舍1入。读数要从前面的整数读到后面的整数(这句更长,分解一下,就是不断乘2,而后把整数留着,把剩下的小数继续乘2,一直到小数部分为0,把留下的整数部分顺序连起来就OK了!至于四舍五入的状况,你会遇到几回呢?呵呵!)

eg:0.6875

                     整数      小数

0.6875*2         1        .375

0.375*2           0        .75

0.75*2             1        .5

0.5*2               1         0

此时小数部分为0,把整数连起来1011(正序啊~)(注意啊,跟示例2小数数值是否一致呢。。。。!)

到此该结束了。怎么样,高端大气上档次吧。恩~(那还有八进制转十进制、转十六进制 |  十进制转八进制、十六进制 | 十六进制转八进制、转十进制呢???)

难道真要记住那些繁琐怪异凌乱变态的规则吗,一句话,剩下的全借二进制中转一下(固然你够厉害或者很** 就另当别论了,呵呵!)

若有错误请指出,反正我也不必定改!

相关文章
相关标签/搜索