二進位制和八進位制十六進製制之間的小數部分怎麼轉換 最好能詳細

2021-04-01 06:19:23 字數 7349 閱讀 9363

1樓:felix非理性

小數點後面的進製

轉換採用估值,一般手算是這樣的:十進位制轉二進位制,將小數點後的數單獨拿出來(就是去掉前面的整數部分為零),然後乘2,取結果的整數部分,再取結果的小數部分乘2,再取整數部分,以此類推,除非是1/2的整數次,否則可以一直往下算,不過一般是取三位或四位有效數字,按照最後結果,從上到下取每次結果的整數部分。如果看不明白,可以看範例,如12.

3456dec轉為二進位制,整數部分就不說了,是1100,小數部分這樣算,將.3456看為0.3456再乘以2,得到0.

6912,取整數字0,再重複第一步,將0.6912乘以2得1.3824,取整數字1,繼續重複第一步,將0.

3824乘以2得0.7648,取整數字0,下面還是依次類推,一般算到3位就可以了,所以現在12.3456dec轉為二進位制數就是1100.

010bin。這是十進位制轉為二進位制,十進位制轉為八及十六進製制是同樣道理,只要將乘以2改為乘以8或者16就可以了。

至於二進位制轉為十進位制,方法和整數字相同,例1100.010bin轉十進位制,解法如下1100.010bin=0*2^0+0*2^1+1*2^2+1*2^3+0*2^(-1)+1*2^(-2)+0*2^(-3)=12.

25比較前後兩個答案可以知道十進位制轉二進位制是很難得到精確的值的。

當然,如果你說有沒有可以直接將二進位制轉為八進位制或16進製制的方法,有

1.二轉八:1011010.

1bin 可以這樣看,001011010.100,然後每三位轉為八進位制數,如(001)=1,(011)=3,(010)=2,(100)=4,然後就得到八進位制數132.4oct。

2.十六轉二:f7.

28hex 將十六進製制的每一位都轉為四位的二進位制數,即f=1111,7=0111,2=0010,8=1000,即可得到二進位制數11110111.00101000bin

總之把握2^3=8,2^4=16這個道理以及,每位八進位制數相當於3位二進位制數,每位16進製制數相當於4位2進製數這句話就可以了。

基本上進製轉換就是這個方法,當然除了考試以外,你還是用電腦自帶的計算器完成吧。

以上完全自己手打,樓主感激我吧,不知道有沒有讓你滿意。

2樓:有點無聊

2到8是3位已轉``

2到16是4位好像是一樣的````

看看別人是怎麼說的

二進位制,八進位制,十進位制,十六進製制之間怎麼轉換

3樓:匿名使用者

一。進製概念

1。 十進位制

十進位制使用十個數字(0、1、2、3、4、5、6、7、8、9)記數,基數為10,逢十進一。

歷史上第一台電子數字計算機eniac是一台十進位制機器,其數字以十進位制表示,並以十進位制形式運算。設計十進位制機器比設計二進位制機器複雜得多。而自然界具有兩種穩定狀態的元件普遍存在,如開關的開和關,電路的通和斷,電壓的高和低等,非常適合表示計算機中的數。

設計過程簡單,可靠性高。因此,現在改為二進位制計算機。

2。 二進位制

二進位制以2為基數,只用0和1兩個數字表示數,逢2進一。

二進位制與遵循十進位制數遵循一樣的運算規則,但顯得比十進位制更簡單。例如:

(1)加法:0+0=0 0+1=1 1+0=1 1+1=0

(2)減法:0-0=0 1-1=01-0=1 0-1=1

(3)乘法:0*0=0 0*1=01*0=0 1*1=1

(4)除法:0/1=0 1/1=1,除數不能為0

3。 八進位制

所謂八進位制,就是其基數為8,基數值可以取0、1、2、3、4、5、6、7共8個值,逢八進一。

八進位制與十進位制運算規則一樣。那麼為什麼要用八進位制呢?難道要設計八進位制的計算機麼?

實際上,八進位制與十六進製制的引用,主要是為了書寫和表示方便,因為二進位制表示位數比較長。如:(1024)10 用二進位制表示為 (10000000000)2,共有11個數字,用八進位制表示為(2000)8。

更重要的是,由於二進位制與八進位制存在在一種對等關係,每三位二進位制與一位八進位制數完全對等(23=8)。所以二進位制和十進位制在運算上無區別,而時進製不具備這一優點。

4。 十六進製制

十六進製制應用也是非常廣泛的一種計數制。在使用者看來,十六進製制是二進位制數的一種更加緊湊的一種表示方法。

基數為:0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f,逢十進一。在十六進製制系統中,數值為10到15的數分別用a、b、c、d、e、f表示。

二進位制數及與之等值的八進位制、十進位制和十六進製制數

二進位制 八進位制 十進位制 十六進製制

0000 0 0 0

0001 1 1 1

0010 2 2 2

0011 3 3 3

0100 4 4 4

0101 5 5 5

0110 6 6 6

0111 7 7 7

1000 10 8 8

1001 11 9 9

1010 12 10 a

1011 13 11 b

1100 14 12 c

1101 15 13 d

1110 16 14 e

1111 17 15 f

二。進製轉換

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

4樓:和添錦

在二進位制轉為十進位制時,只需要記住,從左邊起,第一位的權值為2的0次,每往右移動一位,2的冥增加1,然後使用對應的1或者0乘以對應的權位,在加起來就是十進位制:1011010110是二進位制,那麼結果就是:0*2^0+1*2^1+1*2^2+0*2^3+1*2^4+0*2^5+1*2^6+1*2^7+0*2^8+1*2^9,(2^0到2^10數值依次為:

0,1,2,4,8,16,32,64,128,256,512,1024),求出這個多項式的結果:726,這個結果就是1011010110二進位制對應的十進位制數。

二進位制和八進位制的轉換:首先,八等於二的三次方,由此,我們在二進位制轉為八進位制時,從右到左,每三位為一組,分別求這個三位二進位制表示的數,求解完成依次從右到左寫下就ok啦:1011010110是二進位制, 分組:

1 011 010 110,其中110等於十進位制的6,010等於十進位制2,011等於十進位制3,1等於十進位制1(此處可以在1前面補0,使之成為001),,那麼順序寫下十進位制數:1326,這就是1011010110二進位制轉為八進位制的結果。

二進位制轉為十六進製制:因為十六等於二的四次方,由此,在轉換時只需要將二進位制從右到左每四位為一組,求十進位制數,並用十六進製制表示即可(十六進製制中,0-9表示和十進位制一樣,a-10 、b-11 ,c-12 ,d-13 ,e-14 ,f-15).1011010110是二進位制,分組:

0010 1101 0110(最前面位數不夠,在左邊補0 ,因為任何數在左邊補0,這個數不變)0110轉為十進位制為6,1101轉為十進位制為13,13用十六進製制表示為d,0010轉為十進位制為2,那麼順序取值:2d6,這就是二進位制1011010110轉為十六進製制的結果。

5樓:涼城空也

ccandbobo

2011-08-05 09:22

一。進製概念

1。 十進位制

十進位制使用十個數字(0、1、2、3、4、5、6、7、8、9)記數,基數為10,逢十進一。

歷史上第一台電子數字計算機eniac是一台十進位制機器,其數字以十進位制表示,並以十進位制形式運算。設計十進位制機器比設計二進位制機器複雜得多。而自然界具有兩種穩定狀態的元件普遍存在,如開關的開和關,電路的通和斷,電壓的高和低等,非常適合表示計算機中的數。

設計過程簡單,可靠性高。因此,現在改為二進位制計算機。

2。 二進位制

二進位制以2為基數,只用0和1兩個數字表示數,逢2進一。

二進位制與遵循十進位制數遵循一樣的運算規則,但顯得比十進位制更簡單。例如:

(1)加法:0+0=0 0+1=1 1+0=1 1+1=0

(2)減法:0-0=0 1-1=01-0=1 0-1=1

(3)乘法:0*0=0 0*1=01*0=0 1*1=1

(4)除法:0/1=0 1/1=1,除數不能為0

3。 八進位制

所謂八進位制,就是其基數為8,基數值可以取0、1、2、3、4、5、6、7共8個值,逢八進一。

八進位制與十進位制運算規則一樣。那麼為什麼要用八進位制呢?難道要設計八進位制的計算機麼?

實際上,八進位制與十六進製制的引用,主要是為了書寫和表示方便,因為二進位制表示位數比較長。如:(1024)10 用二進位制表示為 (10000000000)2,共有11個數字,用八進位制表示為(2000)8。

更重要的是,由於二進位制與八進位制存在在一種對等關係,每三位二進位制與一位八進位制數完全對等(23=8)。所以二進位制和十進位制在運算上無區別,而時進製不具備這一優點。

4。 十六進製制

十六進製制應用也是非常廣泛的一種計數制。在使用者看來,十六進製制是二進位制數的一種更加緊湊的一種表示方法。

基數為:0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f,逢十進一。在十六進製制系統中,數值為10到15的數分別用a、b、c、d、e、f表示。

二進位制數及與之等值的八進位制、十進位制和十六進製制數

二進位制 八進位制 十進位制 十六進製制

0000 0 0 0

0001 1 1 1

0010 2 2 2

0011 3 3 3

0100 4 4 4

0101 5 5 5

0110 6 6 6

0111 7 7 7

1000 10 8 8

1001 11 9 9

1010 12 10 a

1011 13 11 b

1100 14 12 c

1101 15 13 d

1110 16 14 e

1111 17 15 f

二。進製轉換

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

十進位制二進位制還有八進位制十六進製制中的dboh分

這四個字母分別代表不同進製的字尾 區別如下 d decimal 表示這個數是十進位制 b binary 表示這個數是二進位制 o octor 表示這個數是八進位制 h hex 表示這個數是十六進製制 擴充套件資料 進製之間可以相互轉換,具體方法如下 1 二進位制數 十六進製制數轉換為十進位制數 用按...

二進位制,八進位制,十進位制,十六進製制之間的相互轉換方法

這是我自己製作的進製轉換文件 你可以去看看 有詳細的步驟 如果講軟體處理 變數中的值都是以二進位制儲存的,不能用其他進製。如果要輸出為字串,可以用函式轉換。如果講數制表示 我們平時書寫的數僅僅寫出了表示式的係數,是簡寫法。標準書寫如下 比如乙個數寫為 321。十進位制321 3x10 2 2x10 ...

八進位制十六進製制的優點二進位制十進位制八進位制十六進製制各代表的英文本母是什麼

首先,計算機採用二進位制 即0,1 用二進位制 有很多有點,比方說在邏輯運算子中0代表假,非0代表真 在邏輯電路中,0和1各代表導通或者不通 各個電路0和1代表的不一樣 而十進位制顯然沒有這個優點 另外2進製數和8進製數,16進製制數之間轉換相當方便,譬如二進位制轉8進製每三位轉一數,二進位制轉16...