1. 程式人生 > >20180417_十進制與二進制的轉換

20180417_十進制與二進制的轉換

style ont 十進制轉二進制 計算機 image .com gin 圖片 ima

一、十進制轉二進制

1、正數

十進制轉二進制的方法是遞歸除2,直到商等於0停止,倒序取余數;二進制通常呈4位、8位、16位、32位出現,高位不足補0;

以十進制55為例:

技術分享圖片

    最終得到的二進制數值為 11 0111 ,高位補0最終得到 0011 0111;

2、負數

負數轉二進制需要先將負數取反得到正的十進制數值,之後根據正數的規則轉換成二進制,再將二進制取反後加1;

以十進制-55為例:

  ① 取反得到數值55

  ② 55轉換二進制為 0011 0111

  ③ 將 0011 0111 取反得到 1100 1000

  ④ 將 1100 1000 加1得到 1100 1001

則-55轉換成的二進制數值為 1100 1001

二、二進制轉十進制

   在計算機語言中,0表示正,1表示負;

    1、二進制首位為0

      將二進制所從後往前,依次計算第n位上數字乘以2的n-1次冪,所得到的和即為十進制數字;

      以 0011 0111 為例:

      1*2^0 + 1*2^1 + 1*2^2 + 0*2^3 + 1*2^4 + 1*2^5 = 1 + 2 + 4 + 16 + 32 = 55

      則最終的結果是55

     2、二進制首位為1

      二進制首位為1則表示次二進制數值為負數,根據十進制轉二進制的規則逆推即可;先將該二進制數值減1後取反,轉換成十進制以後取反即為得到的十進制數值。

      以 1100 1001 為例:

        ① 1100 1001 減1 得到 1100 1000

        ② 1100 1000 取反得到 0011 0111

        ③ 0011 0111 轉化成十進制為55

        ④ 55取反得到 -55

      則最終得到結果為 -55

20180417_十進制與二進制的轉換