如何快速將十進制數字轉換為二進制數字

最近我介紹了十進制數字系統(人類常用的系統)和二進制數字系統(機器常用的系統)。

在這篇教程中,我想解釋一下如何從十進制數字轉換為二進制數字。

對於整數和小數,我們有各自不同的轉換過程。

將十進制整數轉換為二進制

可以通過將十進制整數除以2來將其轉換為二進制。

取商,並繼續將商除以2,直到達到零為止。

每次執行這個除法時,注意“餘數”。現在將餘數列表反轉,即可獲得二進制形式的數字。

讓我們舉個例子,我想將29轉換為二進制:

[29\div2 = 14] 餘數為 1

[14\div2 = 7] 餘數為 0

[7\div2 = 3] 餘數為 1

[3\div2 = 1] 餘數為 1

[1\div2 = 0] 餘數為 1

表示十進制數字29的二進制數字為 11101

再舉個例子,將145十進制轉換為二進制:

[145\div2 = 72] 餘數為 1

[72\div2 = 36] 餘數為 0

[36\div2 = 18] 餘數為 0

[18\div2 = 9] 餘數為 0

[9\div2 = 4] 餘數為 1

[4\div2 = 2] 餘數為 0

[2\div2 = 1] 餘數為 0

[1\div2 = 0] 餘數為 1

表示十進制數字145的二進制數字為 10010001

將十進制小數轉換為二進制

小數部分單獨轉換,就像我們上面做的那樣。要將小數部分轉換為二進制,需要將其乘以2。

如果小數部分的整數部分仍小於 1,則將其分配為 0。如果大於 1,則分配為 1,然後繼續乘以2並遵循這個方案。

當小數部分等於0時停止。

這可能永遠不會發生,並且你會得到一個週期性的小數。在這種情況下,在某一點後停下來。數字的位數越多,在這種情況下,它的精度越高。

讓我們舉個例子。我想將 0.375 轉換為二進制:

[0.375\times2 = 0.75 \implies 0]

[0.75\times2 = 1.5 \implies 1]

[0.5\times2 = 1 \implies 1]

從大於 1 的數字 01 開始,從上到下讀取它(與整數部分相反)。最終,將 .375 翻譯為二進制的結果是 011

此時,您將整數部分(0)和小數部分(011)分開,並將它們組合起來。

數字 0.375 轉換為二進制為 0.011