二進制與十進制互轉


一、正整數十進制轉換二進制:
要點:除二取余,倒序排列
解釋:將一個十進制數除以二,得到的商再除以二,依此類推直到商等於一或零時為止,倒取將除得的余數,即換算為二進制數的結果
例如把52換算成二進制數,計算結果如圖:


52除以2得到的余數依次為:0、0、1、0、1、1,倒序排列,所以52對應的二進制數就是110100。
由於計算機內部表示數的字節單位都是定長的,以2的冪次展開,或者8位,或者16位,或者32位....。
於是,一個二進制數用計算機表示時,位數不足2的冪次時,高位上要補足若干個0。本文都以8位為例。那么:
(52)10=(00110100)2




二、負整數轉換為二進制
要點:取反加一
解釋:將該負整數對應的正整數先轉換成二進制,然后對其取補,再對取補后的結果加1即可
例如要把-52換算成二進制:
1.先取得52的二進制:00110100
2.對所得到的二進制數取反:11001011
3.將取反后的數值加一即可:11001100
即:(-52)10=(11001100)2




三、小數轉換為二進制
要點:乘二取整,正序排列
解釋:對被轉換的小數乘以2,取其整數部分(01)作為二進制小數部分,取其小數部分,再乘以2,又取其整數部分作為二進制小數部分,然后取小數部分,再乘以2,直到小數部分為0或者已經去到了足夠位數。每次取的整數部分,按先后次序排列,就構成了二進制小數的序列
例如把0.2轉換為二進制,轉換過程如圖:
 

0.2乘以2,取整后小數部分再乘以2,運算4次后得到的整數部分依次為0、0、1、1,結果又變成了0.2,
若果0.2再乘以2后會循環剛開始的4次運算,所以0.2轉換二進制后將是0011的循環,即:
(0.2)10=(0.0011 0011 0011 .....)2
循環的書寫方法為在循環序列的第一位和最后一位分別加一個點標注
 


四、二進制轉換為十進制:

整數二進制用數值乘以2的冪次依次相加,小數二進制用數值乘以2的負冪次然后依次相加!

比如將二進制110轉換為十進制:
首先補齊位數,00000110,首位為0,則為正整數,那么將二進制中的三位數分別於下邊對應的值相乘后相加得到的值為換算為十進制的結果

  
  

如果二進制數補足位數之后首位為1,那么其對應的整數為負,那么需要先取反然后再換算
比如11111001,首位為1,那么需要先對其取反,即:-00000110
00000110,對應的十進制為6,因此11111001對應的十進制即為-6
換算公式可表示為:
11111001=-00000110
              =-6

如果將二進制0.110轉換為十進制:
將二進制中的三位數分別於下邊對應的值相乘后相加得到的值為換算為十進制的結果
  

 


免責聲明!

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



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