首先需要明确一點就是并不是所有的十進制小數都能用二進制數精确表示的。這是由于進制的局限性導緻的。例如三進制的0.1,用十進制表示是無限循環小數0.333333.....
十進制的小數轉換為二進制的方法為 十進制小數乘2,取出整數作為二進制小數第一位,餘下的小數再乘以2,取出整數作為小數第二位,如此反複,直至餘下的小數為0。
例:
十進制 0.375
0.375 * 2 = 0.75 ———— 0 (0.75的整數部分為0)
0.75 * 2 = 1.5 ———— 1(1.5的整數部分為1)
0.5 * 2 = 1 ———— 1(1的整數部分為1,且沒有餘數)
則二進制小數位 0.011
十進制 0.675
0.625 * 2 = 1.25 ———— 1(1.25的整數部分為1)
0.25 * 2 = 0.5 ———— 0(0.5的整數部分為0)
0.5 * 2 = 1 ———— 1(1的整數部分為1,且沒有餘數)
則二進制小數位 0.101
十進制 0.38
0.38 * 2 = 0.76 ———— 0(0.76的整數部分為0)
0.76* 2 = 1.52 ———— 1(1.52的整數部分為1)
0.52* 2 = 1.04 ———— 1(1.04的整數部分為1)
0.04*2 = 0.08 ———— 0 (0.08的整數部分為0)
.......
則二進制小數位 0.110........