二進位制是在計算機中常用的一種進製數,其資料用0和1兩個數碼來表示資料。我們人類常用的是十進位制,那麼二進位制和十進位制之間是有乙個轉換方法的。
二進位制轉換十進位制
乙個二進位制數轉換為十進位制數,是比較簡單的,其方法就是用每乙個位置上的數字乘以該位置的權重,然後相加得到。舉個例子,二進位制的1010轉換為十進位制的話,從其最後面一位0開始,一直往前,其權重依次為2º、2¹、2²、2³,所以這個數轉換為十進位制就是0×2º+1×2¹+0×2²+1×2³=9.如果出現小數怎麼辦?方法一樣,小數部分的每一位也有其權重,小數點後第一位權重為2的負一次方,2的負二次方以此類推。例如:二進位制的1.01轉換為十進位制就是1.25。
十進位制轉換為二進位制
十進位制轉換為二進位制是稍微有點複雜的過程,需要分為整數和小數兩部分。整數部分用「除以二取餘」的方法。具體說就是用短除法的形式讓十進位制的數除以二,將其每次的餘數依次寫下來,就是二進位制的數,如十進位制的26變為二進位制的話,如圖。
所以十進位制的26變為二進位制就是11010。對於小數部分,採用的是「乘以二取整」的方法。具體來說就是把小數部分拿出來,乘以2,得到的數把整數部分留下,小數部分繼續乘2,得到的數繼續進行這樣的運算,直到小數部分為0或者取到足夠的位數.然後將每次計算的整數部分依次寫下來就是二進位制下的該數字。計算如圖。
當然,也會出現迴圈的情況,比如十進位制下的0.2轉換二進位制時就會出現0011迴圈的情況,這個時候就是十進位制的0.2轉換為二進位制的話就是(0.001100110011......).
所以在十進位制下的26.625就是二進位制下的11010.101。
二進位制八進位制,十六進製制
其實除了二進位制,十進位制之外,我們還會見到八進位制,十六進製制,它們與二進位制的關係非常密切。我們能夠看到8是2的三次方,16是2的四次方,所以乙個八進位制為相當於3個二進位制位;乙個16進製制位相當於4個二進位制位。
舉個例子,當我們將八進位制下的26轉換為二進位制時,我們可以把2和6兩個數字拆開來看,6相當於二進位制的110, 2相當於二進位制下的010,所以八進位制下的26相當於二進位制下的010110,最高位0可以省去,就是10110.這樣我們就把八進位制的乙個數轉換為二進位制。
二進位制轉換為八進位制也簡單,就是三個二進位制位是乙個八進位制為。舉個例子,二進位制下的11001轉換時,可以這樣看011 001,這樣就可以分別計算011相當於0×2²+1×2¹+1×2º=3,001相當於1,。所以轉換為八進位制就是31。這裡需要注意的一點是計算加法時要做到滿8進1,因為八進位制下不可能出現比8大的數字。
十六進製制的轉換類似,不過是乙個十六進製制位相當於4個二進位制位。十六進製制中就有了abcdef表示10 11 12 13 14 15。
這就是關於二進位制的各種轉換問題,當然,這裡討論的都是正數,負數問題需要跟進一步討論。因為對於負數在二進位制裡有相應的表示方法,這裡就不過多贅述了。
c 將小數化為二進位制 二進位制與十進位制的轉換方式
十進位制是我們生活中常用的進製,而二進位制是計算機世界裡使用的進製,二進位制與十進位制的轉換是最基礎的進製轉換。二進位製到十進位制的轉換可以分為整數和小數兩部分,使用的方法都大同小異。對於整數部分,轉換公式是 abcd 2 d 2 0 c 2 1 b 2 2 a 2 3。即abcd為乙個二進位制整數...
二進位制小數
要理解這道題,首先要知道什麼樣的小數可以轉化為二進位制形式,怎樣的小數不能被轉化為二進位制形式,自己測試幾組資料發現 1.可以轉化為二進位制的小數在有限次的乘二之後,小數部分會變零。舉個例子 0.625 2 1.25 1.25 2 2.5 2.5 2 5.0 5.0的小數部分變成了 0 2.不能轉化...
小數 二進位制
首先,給出乙個任意實數,整數部分用普通的二進位制便可以表示,這裡只說小數部分如何表示 例如0.6 文字描述該過程如下 將該數字乘以2,取出整數部分作為二進位制表示的第1位 然後再將小數部分乘以2,將得到的整數部分作為二進位制表示的第2位 以此類推,知道小數部分為0。特殊情況 小數部分出現迴圈,無法停...