進位制轉換
0.1(十進位制) = 0.0001100110011001(二進位制)
十進位制數0.1轉二進位制計算過程:
0.1*2=0.2……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.2”接著計算。
0.2*2=0.4……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.4”接著計算。
0.4*2=0.8……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.8”接著計算。
0.8*2=1.6……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.6”接著計算。
0.6*2=1.2……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.2”接著計算。
0.4*2=0.8……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.2”接著計算。
0.8*2=1.6……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.2”接著計算。
……
所以,得到的整數依次是:“0”,“0”,“0”,“1”,“1”,“0”,“0”,“1”,“1”,“0”,“0”,“1”……。
由此,大家肯定能看出來,整數部分出現了無限迴圈。
十進位制小數轉換成二進位制數和十進位制整數轉換成二進位制數不同。十進位制整數轉換成二進位制數需要將得到的餘數倒序排列,而十進位制小數轉換成二進位制數只需要將得到的整數按照正常的順序排列就行了。最後將十進位制原數0.1中的整數部分“0”補充到按正常順序排列的得到的“整數”前面,即:
十進位制數0.1對應的二進位制數是
0.000110011001……
整數的轉換是精確的,小數的轉換可能出現無窮不迴圈小數或無限迴圈小數的情況。此時需要進行舍入處理以截斷,所以小數的轉換可能略有偏差。
進位制轉換
0.1(十進位制) = 0.0001100110011001(二進位制)
十進位制數0.1轉二進位制計算過程:
0.1*2=0.2……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.2”接著計算。
0.2*2=0.4……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.4”接著計算。
0.4*2=0.8……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.8”接著計算。
0.8*2=1.6……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.6”接著計算。
0.6*2=1.2……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.2”接著計算。
0.2*2=0.4……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.4”接著計算。
0.4*2=0.8……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.8”接著計算。
0.8*2=1.6……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.6”接著計算。
0.6*2=1.2……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.2”接著計算。
0.2*2=0.4……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.4”接著計算。
0.4*2=0.8……0——整數部分為“0”。整數部分“0”清零後為“0”,用“0.2”接著計算。
0.8*2=1.6……1——整數部分為“1”。整數部分“1”清零後為“0”,用“0.2”接著計算。
……
……
所以,得到的整數依次是:“0”,“0”,“0”,“1”,“1”,“0”,“0”,“1”,“1”,“0”,“0”,“1”……。
由此,大家肯定能看出來,整數部分出現了無限迴圈。
十進位制小數轉換成二進位制數和十進位制整數轉換成二進位制數不同。十進位制整數轉換成二進位制數需要將得到的餘數倒序排列,而十進位制小數轉換成二進位制數只需要將得到的整數按照正常的順序排列就行了。最後將十進位制原數0.1中的整數部分“0”補充到按正常順序排列的得到的“整數”前面,即:
十進位制數0.1對應的二進位制數是
0.000110011001……
整數的轉換是精確的,小數的轉換可能出現無窮不迴圈小數或無限迴圈小數的情況。此時需要進行舍入處理以截斷,所以小數的轉換可能略有偏差。