20180417_十進制與二進制的轉換
一、十進制轉二進制
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_十進制與二進制的轉換