首頁 > 常見問題 > 主體

各進位之間的轉換

發布: 2019-06-17 16:14:28
原創
103860 人瀏覽過

各進位之間的轉換

一、 二進位與十進位之間的轉換

1、二進位轉十進位(不分整數與小數從最後一位算起,每一位上的數乘以2的幾次方,這個次數由這個數字所在的位置決定,從零位開始,然後相加)  

例:01101011.001轉十進位

1乘2的-3次方=0.125
0乘2的-2次方=0
0乘2的-1次方=0
1乘2的0次方=1
1乘2的1次方=2
0乘2的2次方=0
1乘2的3次方=8 
0乘2的4次方=0
1乘2的5次方=32
1乘2的6次方=64
0乘2的7次方=0
登入後複製

然後:1 2+0+8+0+32+64+0=107.125
01101011=107

#2、十進位轉二進位

# 整數:除整數時位置,餘數反向排列;
例:整數23轉二進位:

23除2商11余1
11除2商5余1
5除2商2余1
2除2商1余0
1除2商0余1
登入後複製

然後把餘數反向排列:23=10111

#小數:乘2取整法,即將小數部分乘以2,然後取整數部分,剩下的小數部分繼續乘以2,然後取整數部分,剩下的小數部分又乘以2,一直取到小數部分為零為止。如果永遠不能為零,就同十進制數的四捨五入一樣,按照要求保留多少位小數時,就根據後面一位是0還是1,取捨,如果是零,捨掉,如果是1,向入一位。換句話說就是0舍1入。讀數要從前面的整數讀到後面的整數。

範例:0.125轉二進位

0.125乘以2,得0.25,則整數部分為0,小數部分為0.25; 
0.25乘以2,得0.5,則整數部分為0,小數部分為0.5; 
0.5乘以2,得1.0,則整數部分為1,小數部分為0.0; 
從第一位讀起,讀到最後一位,即為0.001。

23.125 轉二進位10111.001

 二、二進位與八進位之間的轉換(基礎還是二進位與十進位之間的轉換)

取三合一法,即從二進制的小數點為分界點,向左(向右)每三位取成一位,接著將這三位二進制按權相加,得到的數就是一位八位二進制數,然後,依序排列,小數點的位置不變,得到的數字就是我們所求的八進位數。如果向左(向右)取三位後,取到最高(最低)位時候,如果無法湊足三位,可以在小數點最左邊(最右邊),即整數的最高位(最低位)添0,湊足三位)這裡的最高位,最低位和十進制的一樣,前面的是最高位,後面的是最低位。

三位二進位表示一位八進制, 因為三位二進制數最大(111)的十進制數也就是7,所以就保證每位數都是0-7之間的數

1、二進位轉八進位

例:1100100轉為八進位

1100100拆分成:001 100 100

0*2^2+0*2^1+1*2^0=1
1*2^2+0*2^1+0*2^0=4
1*2^2+0*2^1+0*2^0=4
登入後複製


依序讀下來就是:144
1100100=144

2、八進位轉二進位

八進制數與二進制數對應關係如下:

0=000 
1=001 
2=010 
3=011 
4=100 
5=101 
6=110 
7=111
登入後複製

#N:將八進制數653524轉換為二進制數對應關係如下:

1-0001
2-0010
3-0011
4-0100
5-0101
6-0110
7-0111
8-1000
9-1001
A-1010
B-1011
C-1100
D-1101
E-1110
F-1111
登入後複製

#。

##110 101 011 101 010 100 

三、二進位與十六進位之間的轉換(基礎或二進位與十進位之間的轉換)

#四位二進位表示一位十六進位, 因為四位二進制數最大(1111)也就是十進制的表示法15即十六進制的表示法F,所以就保證每位數都是0-F之間的數。

1、二進位轉十六進位


範例:1100100 分割0110  0100
0110=6
0100=4

1100100=64

2、十六進位轉二進位

十六進位數與二進位數之間的對應關係:

第0位:5 * 16^0=5
第1位:F * 16^1=240
第2位:A * 16^2=2560
第3位:2 * 16^3=81925*16^0+F*16^1+A*16^2+2*16^3=10997
登入後複製
四、十進位與十六進位之間的轉換

其演算法和二進位與十進位之間的演算法一樣只是,由2變成了16   


1、十進位轉十六進位
例:十進位數123 轉成十六進位

123除16商7餘B


7除16商0餘7
結果就是7B
2、十六進位轉十進位
例:十六進數2AF5

rrreee

2AF5=10997

相關建議:十進位轉二進位公式

###

以上是各進位之間的轉換的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板