1. 十 -----> 二
(25.625)(十)
整數部分:
25/2=12......1
12/2=6 ......0
6/2=3 ......0
3/2=1 ......1
1/2=0 ......1
然後我們將餘數按從下往上的順序書寫就是:11001,那麼這個11001就是十進位25的二進位形式
小數部分:
0.625*2=1.25
0.25 *2=0.5
0.5 *2=1.0
然後我們將整數部分按從上往下的順序書寫就是:101,那麼這個101就是十進位0.625的二進位形式
所以:(25.625)(十)=(11001.101)(二)
十進位轉成二進位是這樣:
把這個十進位數做二的整除運算,並將所得到的餘數倒過來.
例如將十進位的10轉為二進位是這樣:
(1) 10/2,商5餘0;
(2) 5/2,商2餘1;
(3)2/2,商1餘0;
(4)1/2,商0餘1.
(5)將所得的餘數侄倒過來,就是1010,所以十進位的10轉化為二進位就是1010
2. 二 ----> 十
(11001.101)(二)
整數部分: 下面的出現的2(x)表示的是2的x次方的意思
1*2(4)+1*2(3)+0*2(2)+0*2(1)+1*2(0)=25
小數部分:
1*2(-1)+0*2(-2)+1*2(-3)=0.625
所以:(11001.101)(二)=(25.625)(十)
二進位轉化為十進位是這樣的:
這裡可以用8421碼的方法.這個方法是將你所要轉化的二進位從右向左數,從0開始數(這個數我們叫N),在位元是1的地方停下,並將1乘以2的N次方,最後將這些1乘以2的N次方相加,就是這個二進數的十進位了.
還是舉個例子吧:
求110101的十進位數.從右向左開始了
(1) 1乘以2的0次方,等於1;
(2) 1乘以2的2次方,等於4;
(3) 1乘以2的4次方,等於16;
(4) 1乘以2的5次方,等於32;
(5) 將這些結果相加:1+4+16+32=53
3. 十 ----> 八
(25.625)(十)
整數部分:
25/8=3......1
3/8 =0......3
然後我們將餘數按從下往上的順序書寫就是:31,那麼這個31就是十進位25的八進位形式
小數部分:
0.625*8=5
然後我們將整數部分按從上往下的順序書寫就是:5,那麼這個0.5就是十進位0.625的八進位形式
所以:(25.625)(十)=(31.5)(八)
4. 八 ----> 十
(31.5)(八)
整數部分:
3*8(1)+1*8(0)=25
小數部分:
5*8(-1)=0.625
所以(31.5)(八)=(25.625)(十)
5. 十 ----> 十六
(25.625)(十)
整數部分:
25/16=1......9
1/16 =0......1
然後我們將餘數按從下往上的順序書寫就是:19,那麼這個19就是十進位25的十六進位形式
小數部分:
0.625*16=10(即十六進位的A或a)
然後我們將整數部分按從上往下的順序書寫就是:A,那麼這個A就是十進位0.625的十六進位形式
所以:(25.625)(十)=(19.A)(十六)
6. 十六----> 十
(19.A)(十六)
整數部分:
1*16(1)+9*16(0)=25
小數部分:
10*16(-1)=0.625
所以(19.A)(十六)=(25.625)(十)
如何將帶小數的二進位與八進位、十六進位數之間的轉化問題
我們以(11001.101)(二)為例講解一下進位之間的轉化問題
說明:小數部份的轉化電腦二級是不考的,有興趣的人可以看一看
1. 二 ----> 八
(11001.101)(二)
整數部分: 從後往前每三位一組,缺位處用0填補,然後按十進位方法進行轉化, 則有:
001=1
011=3
然後我們將結果按從下往上的順序書寫就是:31,那麼這個31就是二進位11001的八進位形式
小數部分: 從前往後每三位一組,缺位處用0填補,然後按十進位方法進行轉化, 則有:
101=5
然後我們將結果部分按從上往下的順序書寫就是:5,那麼這個5就是二進位0.101的八進位形式
所以:(11001.101)(二)=(31.5)(八)
2. 八 ----> 二
(31.5)(八)
整數部分:從後往前每一位按十進位轉化方式轉化為三位位元,缺位處用0補充 則有:
1---->1---->001
3---->11
然後我們將結果按從下往上的順序書寫就是:11001,那麼這個11001就是八進位31的二進位形式
說明,關於十進位的轉化方式我這裡就不再說了,上一篇文章我已經講解了!
小數部分:從前往後每一位按十進位轉化方式轉化為三位位元,缺位處用0補充 則有:
5---->101
然後我們將結果按從下往上的順序書寫就是:101,那麼這個101就是八進位5的二進位形式
所以:(31.5)(八)=(11001.101)(二)
3. 十六 ----> 二
(19.A)(十六)
整數部分:從後往前每位按十進位轉換成四位位元,缺位處用0補充 則有:
9---->1001
1---->0001(相當於1)
則結果為00011001或者11001
小數部分:從前往後每位按十進位轉換成四位位元,缺位處用0補充 則有:
A(即10)---->1010
所以:(19.A)(十六)=(11001.1010)(二)=(11001.101)(二)
4. 二 ----> 十六
(11001.101)(二)
整數部分:從後往前每四位按十進位轉化方式轉化為一位元,缺位處用0補充 則有:
1001---->9
0001---->1
則結果為19
小數部分:從前往後每四位按十進位轉化方式轉化為一位元,缺位處用0補充 則有:
1010---->10---->A
則結果為A
所以:(11001.101)(二)=(19.A)(十六)
[編輯本段]
二、負數
負數的進位轉換稍微有些不同。
先把負數寫為其補碼形式(在此不議),然後再根據二進位轉換其它進位的方法進行。
例:要求把-9轉換為八進位形式。則有:
-9的補碼為11111001。然後三位一划
001---->1
111---->157
011---->3
然後我們將結果按從下往上的順序書寫就是:31571,那麼31571就是十進位數-9的八進位形式。
補充:
最近有些朋友提了這樣的問題“0.8的十六進位是多少?”
我想在我的空間裡已經有了詳細的講解,為什麼他還要問這樣的問題那
於是我就動手算了一下,發現0.8、0.6、0.2... ...一些數字在進位之間的轉化
過程中確實存在麻煩。
就比如“0.8的十六進位”吧!
無論你怎麼乘以16,它的餘數總也乘不盡,總是餘8
具體方法如下:
0.8*16=12.8
0.8*16=12.8