计算机之间的进制转换,二进制转八进制、十进制、十六进制

(一)二进制转十进制

如:

      66 = 64 + 2;

      128  64  32  16  8   4   2   1

       0      1    0    0   0   0   1   0

负十进制转换为二进制的方式

     1)先将该整数的绝对值转换为二进制,然后进行按位取反再加1.

   如:

     -66

     66 => 0100 0010  绝对值转换为二进制

        => 1011 1101  按位取反

        => 1011 1110

负二进制转换为十进制的方式

     1)按位取反再加1,转换为十进制整数之后,添加负号。

   如:

     1011 1110 => 0100 0001  按位取反

               => 0100 0010  再加1

               => 66         转换为十进制整数

               => -66        添加负号

二进制和八进制之间的转换

(二)二进制转换为八进制的方式
     1)将每三位二进制转换为一位八进制,在转换结果的最前面增加0表示八进制
    如:
       010 001  => 021
       010二进制转换为十进制是2
       001二进制转换为十进制是1
       所以八进制前加0就是021
   b.八进制转换为二进制的方式
     1)将每一位八进制转换为三位二进制,在转换结果的最前面增加0b表二进制              (从jdk1.7开始增加的新特性)
    如:
       021 => 0b010 001

(三)二进制和十六进制之间的转换
   a.二进制转换为十六进制的方式
     1)将每四位二进制转换为一位十六进制,在转换结果的最前面增加0x表示十六进制
    如:
       0010 1101 => 0x2d (在十六进制中使用a ~ f来表示 10 ~ 15之间的数字)
       0010二进制转换为十进制是2
       1101二进制转换为十进制是13, 十六进制中使用abcdef来表示 10、12、13、14、15之间的数字  

   b.十六进制转换为二进制的方式
     1)将每一位十六进制转换为四位二进制,在转换结果的最前面增加0b表示二进制
    如:
       0x2d => 0b0010 1101

0b表示二进制
0表示八进制
0x表示十六进制

    原文作者:进制转换
    原文地址: https://blog.csdn.net/weixin_41831802/article/details/81123006
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞