將十進制小數轉換為二進制,邏輯跟整數轉換(除以 2 取餘數)完全不同。這裡我們不使用除法,而是使用「乘 2 取整法」。
簡單來說,就是不斷地把小數部分乘以 2,把浮出來的整數撈出來,直到小數部分變成 0 為止。以下是詳細步驟與原理。🛠️ 核心方法:乘 2 取整法
運算步驟
- 拆分:將十進制數字的「整數部分」與「小數部分」分開處理。
- 整數部分:用「除以 2 取餘數」法(反向排列)。
- 小數部分:用下面的「乘 2 取整」法。
- 乘 2:將小數部分乘以 2。
- 取整:
- 如果結果 ≥1≥1 ,記下 1,並把整數部分的 1 去掉,只保留剩下的小數。
- 如果結果 <1<1 ,記下 0,保留該小數繼續運算。
- 重複:將剩下的小數繼續乘以 2,直到小數部分變成 0,或者達到所需的精確度。
- 排列:將記下的數字由上往下排列(先取出的在高位)。
📝 計算範例
範例一:完美轉換 (0.6250.625 )
假設要將十進制 0.6250.625 轉換為二進制。

- 停止條件:小數部分變成 0,運算結束。
- 讀取結果:由上往下讀取整數列 →→ 101101
- 最終答案:0.625(10)=0.101(2)0.625(10)=0.101(2)
範例二:帶整數的數字 (5.75 )
假設要將 5.75 轉換為二進制。我們需要分開處理。
- 整數部分 (55 ):
- 5÷2=2…1
- 2÷2=1…0
- 1÷2=0…1
- 倒序排列:101
- 小數部分 (0.750.75 ):
- 0.75×2=1.5→ 取 1,剩 0.5
- 0.5×2=1.0→ 取 1,剩 0
順序排列: .11
- 合併:
- 101.11
⚠️ 特殊情況:無限循環小數
並非所有十進制小數都能完美轉換成二進制。如果運算過程中小數部分一直無法歸零,就會產生無限循環。
範例:0.1 (十分之一)
十進制的 0.1 在二進制中是無限循環的,這也是為什麼電腦計算浮點數有時會有誤差的原因。

- 結果:0.0001100110011...(2) (0011 無限循環)
- 處理方式:在電腦中,通常會設定一個「截斷點」(例如只算到小數點後 23 位或 52 位),多餘的部分直接捨棄,這就會造成微小的精度誤差。
📊 總結對照表

記住口訣:「整數除 2 倒著寫,小數乘 2 順著寫」,就能輕鬆掌握轉換技巧!















