(1) 十進位制轉換為二進位制,分為整數部分和小數部分
① 整數部分
方法:除2取餘法,即每次將整數部分除以2,餘數為該位權上的數,而商繼續除以2,餘數又為上一個位權上的數,這個步驟一直持續下去,直到商為0為止,最後讀數時候,從最後一個餘數讀起,一直到最前面的一個餘數。下面舉例:
例:將十進位制的168轉換為二進位制
得出結果 將十進位制的168轉換為二進位制,(10101000)2
分析:第一步,將168除以2,商84,餘數為0。
第二步,將商84除以2,商42餘數為0。
第三步,將商42除以2,商21餘數為0。
第四步,將商21除以2,商10餘數為1。
第五步,將商10除以2,商5餘數為0。
第六步,將商5除以2,商2餘數為1。
第七步,將商2除以2,商1餘數為0。
第八步,將商1除以2,商0餘數為1。
第九步,讀數,因為最後一位是經過多次除以2才得到的,因此它是最高位,讀數字從最後的餘數向前讀,即10101000
(2) 小數部分
方法:乘2取整法,即將小數部分乘以2,然後取整數部分,剩下的小數部分繼續乘以2,然後取整數部分,剩下的小數部分又乘以2,一直取到小數部分 為零為止。如果永遠不能為零,就同十進位制數的四捨五入一樣,按照要求保留多少位小數時,就根據後面一位是0還是1,取捨,如果是零,舍掉,如果是1,向入一位。換句話說就是0舍1入。讀數要從前面的整數讀到後面的整數,下面舉例:
例1:將0.125換算為二進位制 得出結果:將0.125換算為二進位制(0.001)2
分析:第一步,將0.125乘以2,得0.25,則整數部分為0,小數部分為0.25;
第二步, 將小數部分0.25乘以2,得0.5,則整數部分為0,小數部分為0.5;
第三步, 將小數部分0.5乘以2,得1.0,則整數部分為1,小數部分為0.0;
第四步,讀數,從第一位讀起,讀到最後一位,即為0.001。
例2,將0.45轉換為二進位制(保留到小數點第四位)
大家從上面步驟可以看出,當第五次做乘法時候,得到的結果是0.4,那麼小數部分繼續乘以2,得0.8,0.8又乘以2的,到1.6這樣一直乘下去,最後不可能得到小數部分為零,因此,這個時候只好學習十進位制的方法進行四捨五入了,但是二進位制只有0和1兩個,於是就出現0舍1入。這個也是計算機在轉換中會產生誤差,但是由於保留位數很多,精度很高,所以可以忽略不計。
那麼,我們可以得出結果將0.45轉換為二進位制約等於0.0111
上面介紹的方法是十進位制轉換為為二進位制的方法,需要大家注意的是:
1) 十進位制轉換為二進位制,需要分成整數和小數兩個部分分別轉換
2) 當轉換整數時,用的除2取餘法,而轉換小數時候,用的是乘2取整法
3) 注意他們的讀數方向
因此,我們從上面的方法,我們可以得出十進位制數168.125 轉換為二進位制為10101000.001,或者十進位制數轉換為二進位制數約等於10101000.0111。
(3) 二進位制轉換為十進位制 不分整數和小數部分
方法:按權相加法,即將二進位制每位上的數乘以權,然後相加之和即是十進位制數。例將二進位制數101.101轉換為十進位制數。
得出結果:(101.101)2=(5.625)10
大家在做二進位制轉換成十進位制需要注意的是
1) 要知道二進位制每位的權值
2) 要能求出每位的值
轉換程式碼圖表
十進位制 0 1 2 3 4 5 6 7
十六進位制 0 1 2 3 4 5 6 7
二進位制 0000 0001 0010 0011 0100 0101 0110 0111
十進位制 8 9 10 11 12 13 14 15
十六進位制 8 9 A B C D E F
二進位制 1000 1001 101
(1) 十進位制轉換為二進位制,分為整數部分和小數部分
① 整數部分
方法:除2取餘法,即每次將整數部分除以2,餘數為該位權上的數,而商繼續除以2,餘數又為上一個位權上的數,這個步驟一直持續下去,直到商為0為止,最後讀數時候,從最後一個餘數讀起,一直到最前面的一個餘數。下面舉例:
例:將十進位制的168轉換為二進位制
得出結果 將十進位制的168轉換為二進位制,(10101000)2
分析:第一步,將168除以2,商84,餘數為0。
第二步,將商84除以2,商42餘數為0。
第三步,將商42除以2,商21餘數為0。
第四步,將商21除以2,商10餘數為1。
第五步,將商10除以2,商5餘數為0。
第六步,將商5除以2,商2餘數為1。
第七步,將商2除以2,商1餘數為0。
第八步,將商1除以2,商0餘數為1。
第九步,讀數,因為最後一位是經過多次除以2才得到的,因此它是最高位,讀數字從最後的餘數向前讀,即10101000
(2) 小數部分
方法:乘2取整法,即將小數部分乘以2,然後取整數部分,剩下的小數部分繼續乘以2,然後取整數部分,剩下的小數部分又乘以2,一直取到小數部分 為零為止。如果永遠不能為零,就同十進位制數的四捨五入一樣,按照要求保留多少位小數時,就根據後面一位是0還是1,取捨,如果是零,舍掉,如果是1,向入一位。換句話說就是0舍1入。讀數要從前面的整數讀到後面的整數,下面舉例:
例1:將0.125換算為二進位制 得出結果:將0.125換算為二進位制(0.001)2
分析:第一步,將0.125乘以2,得0.25,則整數部分為0,小數部分為0.25;
第二步, 將小數部分0.25乘以2,得0.5,則整數部分為0,小數部分為0.5;
第三步, 將小數部分0.5乘以2,得1.0,則整數部分為1,小數部分為0.0;
第四步,讀數,從第一位讀起,讀到最後一位,即為0.001。
例2,將0.45轉換為二進位制(保留到小數點第四位)
大家從上面步驟可以看出,當第五次做乘法時候,得到的結果是0.4,那麼小數部分繼續乘以2,得0.8,0.8又乘以2的,到1.6這樣一直乘下去,最後不可能得到小數部分為零,因此,這個時候只好學習十進位制的方法進行四捨五入了,但是二進位制只有0和1兩個,於是就出現0舍1入。這個也是計算機在轉換中會產生誤差,但是由於保留位數很多,精度很高,所以可以忽略不計。
那麼,我們可以得出結果將0.45轉換為二進位制約等於0.0111
上面介紹的方法是十進位制轉換為為二進位制的方法,需要大家注意的是:
1) 十進位制轉換為二進位制,需要分成整數和小數兩個部分分別轉換
2) 當轉換整數時,用的除2取餘法,而轉換小數時候,用的是乘2取整法
3) 注意他們的讀數方向
因此,我們從上面的方法,我們可以得出十進位制數168.125 轉換為二進位制為10101000.001,或者十進位制數轉換為二進位制數約等於10101000.0111。
(3) 二進位制轉換為十進位制 不分整數和小數部分
方法:按權相加法,即將二進位制每位上的數乘以權,然後相加之和即是十進位制數。例將二進位制數101.101轉換為十進位制數。
得出結果:(101.101)2=(5.625)10
大家在做二進位制轉換成十進位制需要注意的是
1) 要知道二進位制每位的權值
2) 要能求出每位的值
轉換程式碼圖表
十進位制 0 1 2 3 4 5 6 7
十六進位制 0 1 2 3 4 5 6 7
二進位制 0000 0001 0010 0011 0100 0101 0110 0111
轉換程式碼圖表
十進位制 8 9 10 11 12 13 14 15
十六進位制 8 9 A B C D E F
二進位制 1000 1001 101