二進制浮點數的科學記數法表示,其實就是你熟悉的十進制科學記數法的「二進制版」。它的核心思想是將一個二進制數表示為 ±1.xxxxx × 2ⁿ 的形式,這在電腦科學中稱為「規格化」(Normalization)。
這種表示法是現代電腦儲存浮點數的基礎,也就是 IEEE 754 標準的核心。🧩 核心原理:二進制科學記數法
在十進制中,科學記數法會將數字表示為 ±M × 10ⁿ,其中尾數 M 的絕對值範圍是
1 ≤ |M| < 10。
在二進制中,規則完全相同,只是底數從 10 變成了 2:
- 公式:
±M × 2ⁿ - 尾數 M:因為是二進制,要滿足
1 ≤ |M| < 2,尾數M的整數部分只能是 1。 - 因此,任何非零的二進制數都可以唯一地表示為
±1.xxxxx × 2ⁿ的形式。
這個形式由三個部分組成:
- 符號 (Sign, S):決定數字是正數 (S=0) 還是負數 (S=1)。
- 尾數 (Significand/Mantissa, M):即
1.xxxxx的部分,代表數字的精度。 - 指數 (Exponent, E):即
n的部分,決定小數點的位置,代表數字的範圍。
📝 轉換步驟與範例
讓我們以十進制數字 6.5 為例,看看如何用二進制科學記數法表示它。
第一步:將十進制轉換為二進制
- 整數部分
6轉為二進制是110。 - 小數部分
0.5轉為二進制是.1(因為 0.5 = 2⁻¹)。 - 所以,
6.5的二進制形式是110.1。
第二步:規格化(移動小數點)
將二進制小數點向左移動,直到整數部分只剩下一個 1。
110.1的小數點向左移動 2 位,變成1.101。- 因為向左移動了 2 位,所以要乘以
2²來保持數值不變。
第三步:寫成科學記數法形式
現在我們得到了二進制科學記數法的表示:
1.101 × 2²
在這個例子中:
- 符號:正數
- 尾數 (M):
1.101 - 指數 (E):
2
💻 電腦如何儲存:IEEE 754 標準
電腦並不會直接儲存 1.101 × 2² 這個式子,而是會根據 IEEE 754 標準,將這三個部分(符號、指數、尾數)以特定的格式編碼後存入記憶體。以最常見的 32位元單精度浮點數 (float) 為例:

所以,6.5 (1.101 × 2²) 在記憶體中的實際儲存方式如下:
- 符號位:
0(正數) - 指數位:
2 + 127 = 129,二進制為10000001 - 尾數位:隱藏
1.,只存101,後面補 0 到 23 位,即10100000000000000000000
將這三部分組合起來,就是 6.5 在電腦中的二進制浮點數表示。這個精巧的設計讓電腦能夠高效地處理範圍極大或極小的實數。


