十進制小數轉換為二進制


 一、十進制小數轉化為二進制小數

十進制小數轉換為二進制小數采用的方法:乘 2 取整,順序排列

具體做法:

  • 用 2 乘十進制小數,可以得到成積,
  • 將乘積的整數部分取出,再用剩余的小數部分乘 2,可以得到一個積。
  • 乘積的整數部分取出,再用剩余的小數部分乘 2,可以得到一個積。
  • .........

按照這個步驟重復多次,直到乘積中的小數部分為 0。

此時0 或 1為2進制的最后一位。或是達到要求的精度為止。

然后將取出的整數部分順序排列起來,先取出來的整數作為二進制的高位有效位,后取的整數作為低位的有效位(順序提取,自上而下)

實例1:


 0.1875 = (0.0011)B

0.1875* 2 = 0.375 _______  取出整數部分 0;

0.375 * 2 = 0.75 ————— 取出整數部分 0;

0.75 * 2 = 1.5 —————— 取出整數部分 1;

0.5 * 2 = 1.0   —————— 取出整數部分 1;

順序取出,所以最后結果為 0.0011...

實例2:


 0.2 = (0.00110011)B

0.2 * 2 = 0.4 ——————— 取出整數部分 0;

0.4 * 2 = 0.8 ——————— 取出整數部分 0;

0.8 * 2 = 1.6 ——————— 取出整數部分 1;

0.6 * 2 = 1.2 ——————— 取出整數部分 1;

0.2 * 2 = 0.4 ——————— 取出整數部分 0;

0.4 * 2 = 0.8 ——————— 取出整數部分 0;

0.8 * 2 = 1.6 ——————— 取出整數部分 1;

.............

順序取出,所以最后結果為 0.00110011

 

二、二進制小數轉換成十進制

二進制轉換成十進制的基本做法是:將二進制數首先寫成加權系數展開式,然后按十進制加法規則求和,按權相加。

實例1:


 (1101.01)B 轉換成十進制的小數

1*(2^3) + 1*(2^2) + 0*(2^1) + 1*(2^0) + 0*(2^ -1) + 1*(2^ -2)

= 8 + 4 + 0 +1 + 0 + 0.25

= 13.25

實例2:


 (1.101)B轉換成十進制小數

1*(2^0) + 1*(2^ -1) + 0*(2^ -2) + 1*(2^ -3)

= 1 + 0.5 + 0.125

= 1.625

 

三、十進制數轉換為二進制數

十進制數轉換為二進制數時,由於整數和小數的轉換方法不同,所以先將十進制數的整數部分和小數部分分別轉換,然后再合並。

十進制整數轉換為二進制整數采用 除2取余,倒序排列 的方式。

具體方法:

  • 十進制整數除以 2 ,可以得到一個商和余數;
  • 再用 2除商,又可以得到一個商和余數;
  • ……

重復運算,直到商為 0 為止,然后再把得到的余數作為二進制的低位有效,得到的余數作為二進制的高位有效位,依次排列起來。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM