进制之间的转化和表达方式

进制的规范格式:

  • 二进制:以0b和0B开头,例如:0b1111,0B0000。
  • 八进制:以Oo、OO和O开头,例如:Oo135,O654。
  • 十六进制:以OX和Ox开头,例如:Ox123,OX456

       认识了进制的表达格式之后,咱们再去进行进制之间的转化。

进制之间的转化:

  • 其余进制和十进制之间的转化:

    • 二进制转化成十进制:

               这里咱们先了解一个东西叫权重,也就是二进制想要转化成十进制只需要加上各自的权重就会变成想要的值,比如111就是100,10,1,每个位置代表不同的权重,这里也可以写成1*10^2,1*10^1,1*10^0,解决了这个,下面的那些转化就简单了,例如将0B1011001转化成十进制1* 2^0+0*2^1+0*2^2+1*2^3+1*2^4+0*2^5+1*2^6 = 89,这样0B1011001 = 89 .

    • 八进制转化成十进制

       类似上文的方法,我们将O25转化成十进制:5*8^0+2*8^1 = 21,那十六进制的算法咱们也就不再赘述了。

  • 十进制转化成其余进制

    • 十进制转化成二进制:

      我们用例子来说明,将15.25转化成二进制:整数部分:15除以2得7余1,7除以2得3余1,3除以2得1余1,1除以2得0余1,所以15转化成二进制为1111,小数部分:0.25*2=0.5,整数部分为0,小数部分为5;0.5*2=1,整数部分为1,小数部分为0,所以0.25转化成二进制为0.01,故15.25=Ob1111.01。

    • 十进制转化成八进制:

        咱们还是用例子来说明,将125转化成八进制:125除以8得15余5,15除以8得1余7,1除以8得0余1,故125 = O175,同样十进制转化成十六进制也是以此类推。

  • 二进制转化成八进制和十六进制:

    • 二进制转化成八进制:

      取三个为一组,整数位不足三位在左边补零,小数位不足三位在右边补零,直接用例子来说明,将Ob10.01转化成八进制:

        • 先补零,变成010.010
        • 再按权重相加,小数部分:0*2^0+1*2^1+0*2^2 = 2,整数部分:0*2^0+1*2^1+0*2^2 = 2,所以Ob10.01=O2.2
    • 二进制转化成十六进制:

        取四个为一组,整数位不足三位在左边补零,小数位不足三位在右边补零,那咱们直接将Ob1011001转化成十六进制

      • 先补零,则变为01011001
      • 按权重相加,Ob1011001 = Ox59。
  • 八进制转化成二进制:

   八进制转化二进制咱们使用观察法,举个例子就明白了,将O257转化成二进制:2在1和2之间所以咱们可以确定出前三个数为010,5在2和4之间故为101,7在4和8之间所以转化二进制为111,所以O259 = Ob10101111,转化的原理就是,取三位1*2^0+1*2^1+1*2^1 = 7,可以满足八进制所有数字的需求,十六进制取四位也是类似。

 

注:各进制之间的转化都有一定的规律,计算亦是如此。

      

 

posted on 2022-01-23 20:05  huxiaofeng  阅读(916)  评论(0编辑  收藏  举报

导航