1. 程式人生 > >十進位制小數與二進位制的相互轉換

十進位制小數與二進位制的相互轉換

如:十進位制小數2.125
計算過程:
(1)先取該數的整數部分,轉換為二進位制,2的二進位制為10
(2)剩下的小數部分乘以2,取整,小數部分繼續乘以2,直到小數部分為0為之
(3)計算如下:
0.125 * 2 = 0.25; //取整為0
0.250 * 2 = 0.5; //取整為0
0.5 * 2 = 1.0; //取整為1,小數部分為0
最後結果:2.125的二進位制為 10.001

二進位制小數轉十進位制
還是以10.001為例
(1)先將整數部分轉換,10轉為十進位制為2;
(2)小數點後的數字,依次乘以2^(-1),2^(-2),2^(-3)……
(3)計算如下:
0 * 2^(-1) = 0;
0 * 2^(-2) = 0 ;
1 * 2^(-3) = 0.125 ;
(4)整數部分與小數部分相加:2 + 0.125 = 2.125