回覆列表
  • 1 # 天藍如海7

    (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

  • 中秋節和大豐收的關聯?
  • 夏至的前一個節氣是什麼,芒種是一個什麼節氣?