帶小數的十進制數字和2進制數字相互轉換的邏輯


不同進制是指不同位置上數字對應的權值不同。

2進制對應的權值是以2為底的指數20,21....等

1001001轉換為十進制的話是1+8+64=73

從10進制向2進制轉換:

整數部分“除2取余”,小數部分“乘2取余”

 

乘二取整是針對十進制小數部分轉換為二進制的方法,而整數部分為除二取余,具體如下:

  1. 將整數部分輾轉相除2,將余數倒序排列,即整數部分的二進制數

  2. 將小數部分輾轉相乘2,將乘積的個位數部分正序排列,即小數部分的二進制數

 

例:

將32.12轉換為二進制數

整數部分:

32÷2=16余0

16÷2=8余0

8÷2=4余0

4÷2=2余0

2÷2=1余0

1÷2=0余1

將余數倒序排列,為10 0000

小數部分:

0.12×2=0.24(個位0)

0.24×2=0.48(個位0)

0.48×2=0.96(個位0)

0.96×2=1.92(后續運算只取小數部分進行,若出現個位數,則對應的二進制位數為1)

0.92×2=1.84(個位1)

0.84×2=1.68(個位1)

0.68×2=1.36(個位1)

接下來可以無限計算下去,取約數,小數部分為0.0001111

所以32.12D=10 0000.0001111


免責聲明!

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



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