1樓:京惜萍鮑融
(汗,沒寫完)
有通用的公式
你輸入一個x進位制下的數,n_x,要轉到y進位制程式設計n_y那麼:將n_x按權,再相加,用十進位制的方法相加//解釋一下:
//如二進位制數1010按權就是1*2(3)+0*2(2)+1*2(1)+0*2(0)
//()裡面表示的是2的n次冪。
然後就可以得到十進位制下的數n。
n不停的除以y,然後按順序記錄下每次除以之後的餘數。將餘數逆序寫出就是n_y了
但是,2進位制中,轉化為16進位制和8進位制的話,有簡單一點的方法:
2進位制的數b,從右往左,4位4位一組(最左面不夠的話,在前面補0)設4位一組是:abc
d對應的數是:842
1例如11
11那麼變成16進位制就是,8+4+2+1=15即16進位制中的f1010變成16進位制就是,8+2=10,即a
如果是2進位制變8進位制,則是3位一組,每組為(421),方法同上
2樓:禰凌波項卓
有通用的公式
你輸入一個x進位制下的數,n_x,要轉到y進位制程式設計n_y那麼:將n_x按權,再相加,用十進位制的方法相加//解釋一下:
//如二進位制數1010按權就是1*2(3)+0*2(2)+1*2(1)+0*2(0)
//()裡面表示的是2的n次冪。
然後就可以得到十進位制下的數n。
n不停的除以y,然後按順序記錄下每次除以之後的餘數。將餘數逆序寫出就是n_y了
但是,2進位制中,轉化為16進位制和8進位制的話,有簡單一點的方法:
2進位制的數b,從右往左,4位4位一組(最左面不夠的話,在前面補0)設4位是:abc
d對應的是:8421
2進位制8進位制10進位制16進位制各個之間如何進行換算?
3樓:肥仙女
一、二進位制與十進位制之間的轉換:
1、十進位制轉二進位制,方法為:十進位制數除2取餘法,即十進位制數除2,餘數為權位上的數,得到的商值繼續除2,依此步驟繼續向下運算直到商為0為止。
2、二進位制轉十進位制,方法為:把二進位制數按權、相加即得十進位制數。
二、二進位制與八進位制之間的轉換:
1、二進位制轉八進位制,3位二進位制數按權相加得到1位八進位制數。(注意事項,3位二進位制轉成八進位制是從右到左開始轉換,不足時補0)。
2、八進位制轉成二進位制,方法為:八進位制數通過除2取餘法,得到二進位制數,對每個八進位制為3個二進位制,不足時在最左邊補零。
三、二進位制與十六進位制之間的轉換
1、二進位制轉十六進位制,方法為:與二進位制轉八進位制方法近似,八進位制是取三合一,十六進位制是取四合一。(注意事項,4位二進位制轉成十六進位制是從右到左開始轉換,不足時補0)。
2、十六進位制轉二進位制,方法為:十六進位制數通過除2取餘法,得到二進位制數,對每個十六進位制為4個二進位制,不足時在最左邊補零。
4樓:匿名使用者
一)、數制
計算機中採用的是二進位制,因為二進位制具有運算簡單,易實現且可靠,為邏輯設計提供了有利的途徑、節省裝置等優點,為了便於描述,又常用
八、十六進位制作為二進位制的縮寫。
一般計數都採用進位計數,其特點是:
(1)逢n進一,n是每種進位計數製表示一位數所需要的符號數目為基數。
(2)採用位置表示法,處在不同位置的數字所代表的值不同,而在固定位置上單位數字表示的值是確定的,這個固定位上的值稱為權。
在計算機中:d7 d6 d5 d4 d3 d2 d1 d0 只有兩種0和1
8 4 2 1
二)、數制轉換
不同進位計數制之間的轉換原則:不同進位計數制之間的轉換是根據兩個有理數如相等,則兩數的整數和分數部分一定分別相等的原則進行的。也就是說,若轉換前兩數相等,轉換後仍必須相等。
有**制
十進位制:有10個基數:0 ~~ 9 ,逢十進一
二進位制:有2 個基數:0 ~~ 1 ,逢二進一
八進位制:有8個基數:0 ~~ 7 ,逢八進一
十六進位制:有16個基數:0 ~~ 9,a,b,c,d,e,f (a=10,b=11,c=12,d=13,e=14,f=15) ,逢十六進一
1、數的進位記數法
n=a n-1*p n-1+a n-2*p n-2+…+a2*p2+a1*p1+a0*p0
2、十進位制數與p進位制數之間的轉換
①十進位制轉換成二進位制:十進位制整數轉換成二進位制整數通常採用除2取餘法,小數部分乘2取整法。例如,將(30)10轉換成二進位制數。
將(30)10轉換成二進位制數
2| 30 ….0 ----最右位
2 15 ….1
2 7 ….1
2 3 ….1
1 ….1 ----最左位
∴ (30)10=(11110)2
將(30)10轉換成
八、十六進位制數
8| 30 ……6 ------最右位
3 ------最左位
∴ (30)10 =(36)8
16| 30 …14(e)----最右位
1 ----最左位
∴ (30)10 =(1e)16
3、將p進位制數轉換為十進位制數
把一個二進位制轉換成十進位制採用方法:把這個二進位制的最後一位乘上20,倒數第二位乘上21,……,一直到最高位乘上2n,然後將各項乘積相加的結果就它的十進位制表示式。
把二進位制11110轉換為十進位制
(11110)2=1*24+1*23+1*22+1*21+0*20=
=16+8+4+2+0
=(30)10
把一個八進位制轉換成十進位制採用方法:把這個八進位制的最後一位乘上80,倒數第二位乘上81,……,一直到最高位乘上8n,然後將各項乘積相加的結果就它的十進位制表示式。
把八進位制36轉換為十進位制
(36)8=3*81+6*80=24+6=(30)10
把一個十六進位制轉換成十進位制採用方法:把這個十六進位制的最後一位乘上160,倒數第二位乘上161,……,一直到最高位乘上16n,然後將各項乘積相加的結果就它的十進位制表示式。
把十六制1e轉換為十進位制
(1e)16=1*161+14*160=16+14=(30)10
3、二進位制轉換成八進位制數
(1)二進位制數轉換成八進位制數:對於整數,從低位到高位將二進位制數的每三位分為一組,若不夠三位時,在高位左面添0,補足三位,然後將每三位二進位制數用一位八進位制數替換,小數部分從小數點開始,自左向右每三位一組進行轉換即可完成。例如:
將二進位制數1101001轉換成八進位制數,則
(001 101 001)2
| | |
( 1 5 1)8
( 1101001)2=(151)8
(2)八進位制數轉換成二進位制數:只要將每位八進位制數用三位二進位制數替換,即可完成轉換,例如,把八進位制數(643.503)8,轉換成二進位制數,則
(6 4 3 . 5 0 3)8
| | | | | |
(110 100 011 . 101 000 011)2
(643.503)8=(110100011.101000011)2
4、二進位制與十六進位制之間的轉換
(1)二進位制數轉換成十六進位制數:由於2的4次方=16,所以依照二進位制與八進位制的轉換方法,將二進位制數的每四位用一個十六進位制數碼來表示,整數部分以小數點為界點從右往左每四位一組轉換,小數部分從小數點開始自左向右每四位一組進行轉換。
(2)十六進位制轉換成二進位制數
如將十六進位制數轉換成二進位制數,只要將每一位十六進位制數用四位相應的二進位制數表示,即可完成轉換。
例如:將(163.5b)16轉換成二進位制數,則
( 1 6 3 . 5 b )16
| | | | |
(0001 0110 0011. 0101 1011 )2
(163.5b)16=(101100011.01011011)2
參考資料
5樓:匿名使用者
進位制轉換
1。二進位制與十進位制數間的轉換
(1)二進位制轉換為十進位制
將每個二進位制數按權展開後求和即可。請看例題:
把二進位制數(101.101)2=1*22+0*21+1*20+1*2-1+0*2-2+1*2-3=(5.625)10
(2)十進位制轉換為二進位制
一般需要將十進位制數的整數部分與小數部分分開處理。
整數部分計算方法:除2取餘法 請看例題:
十進位制數(53)10的二進位制值為(110101)2
小數部分計算方法:乘2取整法,即每一步將十進位制小數部分乘以2,所得積的小數點左邊的數字(0或1)作為二進位制表示法中的數字,第一次乘法所得的整數部分為最高位。請看例題:
將(0.5125)10轉換成二進位制。(0.5125)10=(0.101)2
2。 八進位制、十六進位制與十六進位制間的轉換
八進位制、十六進位制與十六進位制之間的轉換方法與二進位制,同十進位制之間的轉換方法類似。例如:
(73)8=7*81+3=(59)10
(0.56)8=5*8-1+6*8-2=(0.71875)10
(12a)16=1*162+2*161+a*160=(298)10
(0.3c8)16=3*16-1+12*16-2+8*16-3=(0.142578125)10
十進位制整數→→→→→八進位制 方法:「除8取餘」
十進位制整數→→→→→十六進位制 方法:「除16取餘」 例如:
(171)10=(253)8
(2653)10=(a5d)16
十進位制小數→→→→→八進位制小數 方法:「乘8取整」
十進位制小數→→→→→十六進位制小數 方法:「乘16取整」 例如:
(0。71875)10=(0.56)8
(0.142578125)10=(0.3c8)16
3. 非十進位制數之間的轉換
(1)二進位制數與八進位制數之間的轉換
轉換方法是:以小數點為界,分別向左右每三位二進位制數合成一位八進位制數,或每一位八進位制數展成三位二進位制數,不足三位者補0。例如:
(423。45)8=(100 010 011.100 101)2
(1001001.1101)2=(001 001 001.110 100)2=(111.64)8
2。二進位制與十六進位制轉換
轉換方法:以小數點為界,分別向左右每四位二進位制合成一位十六進位制數,或每一位十六進位制數展成四位二進位制數,不足四位者補0。例如:
(abcd。ef)16=(1010 1011 1100 1101.1110 1111)2
(101101101001011.01101)2=(0101 1011 0100 1011.0110 1000)2=(5b4b。68)16
2進位制只有0、1兩個數,遇到2就進1,比如二進位制裡的10就等於10進位制裡的2。8進位制就是遇8進一,16進位制就是遇16進一。
2進位制到10進位制,個位是2的0次冪,十位是2的1次冪,以此類推,最後結果相加就是所要的10進位制數,例如:1010110=64*1+32*0+16*1+8*0+4*1+2*1+1*0=86。同樣的方法,8進位制、十六進位制,就是將2的幾次冪換成8的幾次冪或16的幾次冪。
10進位制到2進位制,採用短除法,比如25換成二進位制數,首先用25除以2,商12餘1,先不管餘數,繼續除則有以下結果,商6餘0,商3餘0,商1餘1,商0餘1。這個二進位制數就是倒著書寫這些餘數,即11001。8進位制、16進位制方法雷同,不再敘述。
最後,給出個進位制數的組成:
2進位制:0,1
8進位制:0,1,2,3,4,5,6,7
10進位制:0,1,2,3,4,5,6,7,8,9
16進位制:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
二進位制八進位制十進位制十六進位制的英文名稱分別是什麼
二進位制 binary system 八進位制 octal number system十進位制 decimal system 十六進位制 hexadecimal c語言中的可以直接轉,輸出用 d,o,x分別表示十進位制,八進位制,十六進位制,二進位制比較麻煩,你需要使用其他進位制轉成二進位制再輸出 ...
二進位制八進位制十進位制十六進位制之間怎麼轉換
一。進位制概念 1。十進位制 十進位制使用十個數字 0 1 2 3 4 5 6 7 8 9 記數,基數為10,逢十進一。歷史上第一臺電子數字計算機eniac是一臺十進位制機器,其數字以十進位制表示,並以十進位制形式運算。設計十進位制機器比設計二進位制機器複雜得多。而自然界具有兩種穩定狀態的元件普遍存...
二進位制,八進位制,十進位制,十六進位制之間是怎樣互相轉化的
這幾個進位制轉換時,二進位制可以很方便轉換為其他進位制,舉例十進位制10,二進位制為1010 二進位制到八進位制 把二進位制每3位劃開,1 010這樣,前面1變成1,後面010變成2,就成了八進位制12.二進位制到十進位制 把二進位制直接按位冪乘起來,再相加。比如,1010 1 2 3 1 2 1 ...