Ⅰ 8進制轉2進制怎麼轉
將二進制、八進制、十六進制轉換為十進制
二進制、八進制和十六進制向十進制轉換都非常容易,就是「按權相加」。所謂「權」,也即「位權」。
假設當前數字是 N 進制,那麼:
對於整數部分,從右往左看,第 i 位的位權等於Ni-1
對於小數部分,恰好相反,要從左往右看,第 j 位的位權為N-j。
更加通俗的理解是,假設一個多位數(由多個數字組成的數)某位上的數字是 1,那麼它所表示的數值大小就是該位的位權。
1) 整數部分
例如,將八進制數字 53627 轉換成十進制:
53627 = 5×84 + 3×83 + 6×82 + 2×81 + 7×80 = 22423(十進制)
從右往左看,第1位的位權為 80=1,第2位的位權為 81=8,第3位的位權為 82=64,第4位的位權為 83=512,第5位的位權為 84=4096 …… 第n位的位權就為 8n-1。將各個位的數字乘以位權,然後再相加,就得到了十進制形式。
注意,這里我們需要以十進制形式來表示位權。
再如,將十六進制數字 9FA8C 轉換成十進制:
9FA8C = 9×164 + 15×163 + 10×162 + 8×161 + 12×160 = 653964(十進制)
從右往左看,第1位的位權為 160=1,第2位的位權為 161=16,第3位的位權為 162=256,第4位的位權為 163=4096,第5位的位權為 164=65536 …… 第n位的位權就為 16n-1。將各個位的數字乘以位權,然後再相加,就得到了十進制形式。
將二進制數字轉換成十進制也是類似的道理
11010 = 1×24 + 1×23 + 0×22 + 1×21 + 0×20 = 26(十進制)
從右往左看,第1位的位權為 20=1,第2位的位權為 21=2,第3位的位權為 22=4,第4位的位權為 23=8,第5位的位權為 24=16 …… 第n位的位權就為 2n-1。將各個位的數字乘以位權,然後再相加,就得到了十進制形式。
2) 小數部分
例如,將八進制數字 423.5176 轉換成十進制:
423.5176 = 4×82 + 2×81 + 3×80 + 5×8-1 + 1×8-2 + 7×8-3 + 6×8-4 = 275.65576171875(十進制)
小數部分和整數部分相反,要從左往右看,第1位的位權為 8-1=1/8,第2位的位權為 8-2=1/64,第3位的位權為 8-3=1/512,第4位的位權為 8-4=1/4096 …… 第m位的位權就為 8-m。
再如,將二進制數字 1010.1101 轉換成十進制:
1010.1101 = 1×23 + 0×22 + 1×21 + 0×20 + 1×2-1 + 1×2-2 + 0×2-3 + 1×2-4 = 10.8125(十進制)
小數部分和整數部分相反,要從左往右看,第1位的位權為 2-1=1/2,第2位的位權為 2-2=1/4,第3位的位權為 2-3=1/8,第4位的位權為 2-4=1/16 …… 第m位的位權就為 2-m。
更多轉換成十進制的例子:
二進制:1001 = 1×23 + 0×22 + 0×21 + 1×20 = 8 + 0 + 0 + 1 = 9(十進制)
二進制:101.1001 = 1×22 + 0×21 + 1×20 + 1×2-1 + 0×2-2 + 0×2-3 + 1×2-4 = 4 + 0 + 1 + 0.5 + 0 + 0 + 0.0625 = 5.5625(十進制)
八進制:302 = 3×82 + 0×81 + 2×80 = 192 + 0 + 2 = 194(十進制)
八進制:302.46 = 3×82 + 0×81 + 2×80 + 4×8-1 + 6×8-2 = 192 + 0 + 2 + 0.5 + 0.09375= 194.59375(十進制)
十六進制:EA7 = 14×162 + 10×161 + 7×160 = 3751(十進制)
將十進制轉換為二進制、八進制、十六進制
將十進制轉換為其它進制時比較復雜,整數部分和小數部分的演算法不一樣,下面我們分別講解。
1) 整數部分
十進制整數轉換為 N 進制整數採用「除 N 取余,逆序排列」法。具體做法是:
將 N 作為除數,用十進制整數除以 N,可以得到一個商和余數;
保留余數,用商繼續除以 N,又得到一個新的商和余數;
仍然保留余數,用商繼續除以 N,還會得到一個新的商和余數;
……
如此反復進行,每次都保留余數,用商接著除以 N,直到商為 0 時為止。
把先得到的余數作為 N 進制數的低位數字,後得到的余數作為 N 進制數的高位數字,依次排列起來,就得到了 N 進制數字。
下圖演示了將十進制數字 36926 轉換成八進制的過程:
從圖中得知,十進制數字 36926 轉換成八進制的結果為 110076。
下圖演示了將十進制數字 42 轉換成二進制的過程:
從圖中得知,十進制數字 42 轉換成二進制的結果為 101010。
2) 小數部分
十進制小數轉換成 N 進制小數採用「乘 N 取整,順序排列」法。具體做法是:
用 N 乘以十進制小數,可以得到一個積,這個積包含了整數部分和小數部分;
將積的整數部分取出,再用 N 乘以餘下的小數部分,又得到一個新的積;
再將積的整數部分取出,繼續用 N 乘以餘下的小數部分;
……
如此反復進行,每次都取出整數部分,用 N 接著乘以小數部分,直到積中的小數部分為 0,或者達到所要求的精度為止。
把取出的整數部分按順序排列起來,先取出的整數作為 N 進制小數的高位數字,後取出的整數作為低位數字,這樣就得到了 N 進制小數。
下圖演示了將十進制小數 0.930908203125 轉換成八進制小數的過程:
從圖中得知,十進制小數 0.930908203125 轉換成八進制小數的結果為 0.7345。
下圖演示了將十進制小數 0.6875 轉換成二進制小數的過程:
從圖中得知,十進制小數 0.6875 轉換成二進制小數的結果為 0.1011。
如果一個數字既包含了整數部分又包含了小數部分,那麼將整數部分和小數部分開,分別按照上面的方法完成轉換,然後再合並在一起即可。例如:
十進制數字 36926.930908203125 轉換成八進制的結果為 110076.7345;
十進制數字 42.6875 轉換成二進制的結果為 101010.1011。
注意,十進制小數轉換成其他進制小數時,結果有可能是一個無限位的小數。請看下面的例子:
十進制 0.51 對應的二進制為 0....,是一個循環小數;
十進制 0.72 對應的二進制為 0....,是一個循環小數;
十進制 0.625 對應的二進制為 0.101,是一個有限小數。
二進制和八進制、十六進制的轉換
其實,任何進制之間的轉換都可以使用上面講到的方法,只不過有時比較麻煩,所以一般針對不同的進制採取不同的方法。將二進制轉換為八進制和十六進制時就有非常簡潔的方法,反之亦然。
1) 二進制整數和八進制整數之間的轉換
二進制整數轉換為八進制整數時,每三位二進制數字轉換為一位八進制數字,運算的順序是從低位向高位依次進行,高位不足三位用零補齊。下圖演示了如何將二進制整數 1110111100 轉換為八進制:
從圖中可以看出,二進制整數 1110111100 轉換為八進制的結果為 1674。
八進制整數轉換為二進制整數時,思路是相反的,每一位八進制數字轉換為三位二進制數字,運算的順序也是從低位向高位依次進行。下圖演示了如何將八進制整數 2743 轉換為二進制:
從圖中可以看出,八進制整數 2743 轉換為二進制的結果為 10111100011。
2) 二進制整數和十六進制整數之間的轉換
二進制整數轉換為十六進制整數時,每四位二進制數字轉換為一位十六進制數字,運算的順序是從低位向高位依次進行,高位不足四位用零補齊。下圖演示了如何將二進制整數 10 1101 0101 1100 轉換為十六進制:
從圖中可以看出,二進制整數 10 1101 0101 1100 轉換為十六進制的結果為 2D5C。
十六進制整數轉換為二進制整數時,思路是相反的,每一位十六進制數字轉換為四位二進制數字,運算的順序也是從低位向高位依次進行。下圖演示了如何將十六進制整數 A5D6 轉換為二進制:
從圖中可以看出,十六進制整數 A5D6 轉換為二進制的結果為 1010 0101 1101 0110。
由於在C語言編程中,二進制、八進制、十六進制之間幾乎不會涉及小數的轉換,所以這里我們只講整數的轉換,大家學以致用足以。另外,八進制和十六進制之間也極少直接轉換,這里我們也不再講解了。
總結
本節前面兩部分講到的轉換方法是通用的,任何進制之間的轉換都可以採用,只是有時比較麻煩而已。二進制和八進制、十六進制之間的轉換有非常簡潔的方法,所以沒有採用前面的方法。
Ⅱ 十進制如何換算成二進制例如254 詳細的方法
利用電腦自帶的計算器工具可快捷完成十進制對二進制的轉換,254的二進制是11111110。具體操作請參照以下步驟。
1、在電腦的任務欄中找到「開始」菜單圖標,然後進行點擊。
Ⅲ 十六進制如何轉換成二進制
與十六進制數BC等值的二進制數是10111100,應該選擇B項。
將十六進制數轉換為二進制數,只需將每一位的十六進制數轉換為相應的4位二進制數,然後組合起來即可。
二進制與十六進制之間的轉換:
1、二進制數轉換成十六進制數
由於2的4次方=16,所以依照二進制與八進制的轉換方法,將二進制數的每四位用一個十六進制數碼來表示,整數部分以小數點為界點從右往左每四位一組轉換,小數部分從小數點開始自左向右每四位一組進行轉換。
2、十六進制轉換成二進制數
如將十六進制數轉換成二進制數,只要將每一位十六進制數用四位相應的二進制數表示,即可完成轉換。
Ⅳ 請問一個十進制數35,轉化為二進制數是多少該怎麼算呢
十進制數換算成二進制數的方法是除2取余,逆序讀取。
35/2=17 餘1
17/2=8 餘1
8/2=4 餘0
4/2 =2餘1
2/2 =1餘0
1/2=0 餘1
從下往上(逆序)把余數寫出來。所以,35 [10] = 100011 [2]。
(4)各進制轉二進制計算方法擴展閱讀:
與十進制:
(1)二進制轉十進制
方法:「按權展開求和」
規律:個位上的數字的次數是0,十位上的數字的次數是1,......,依次遞增,而十分位的數字的次數是-1,百分位上數字的次數是-2,......,依次遞減。
注意:不是任何一個十進制小數都能轉換成有限位的二進制數。
(2)十進制轉二進制
· 十進制整數轉二進制數:「除以2取余,逆序排列」(除二取余法)
【例】:
89÷2 ……1
44÷2 ……0
22÷2 ……0
11÷2 ……1
5÷2 ……1
2÷2 ……0
1
·十進制小數轉二進制數:「乘以2取整,順序排列」(乘2取整法)
【例】: (0.625)10= (0.101)2
0.625X2=1.25 ……1
0.25 X2=0.50 ……0
0.50 X2=1.00 ……1
Ⅳ 十進制轉換為二進制怎麼計算
十進數轉成二進數
整數部分,把十進制轉成二進制一直分解至商數為0。讀余數從下讀到上,即是二進制的整數部分數字。 小數部分,則用其乘2,取其整數部分的結果,再用計算後的小數部分依此重復計算,算到小數部分全為0為止,之後讀所有計算後整數部分的數字,從上讀到下。
二進制化為八進制
把二進制化為八進制也很容易,因為八進制以8為基數,8是2的冪(8=23),因此八進制的一位恰好需要三個二進制位來表示。八進制與二進制數之間的對應就是上面表格中十六進制的前八個數。二進制數000就是八進制數0,二進制數111就是八進制數7,以此類推。
(5)各進制轉二進制計算方法擴展閱讀:
來源
1、十進制
人類算數採用十進制,可能跟人類有十根手指有關。亞里士多德稱人類普遍使用十進制,只不過是絕大多數人生來就有10根手指這樣一個解剖學事實的結果。
實際上,在古代世界獨立開發的有文字的記數體系中,除了巴比倫文明的楔形數字為60進制,瑪雅數字為20進制外,幾乎全部為十進制。只不過,這些十進制記數體系並不是按位的。
2、二進制
現代的二進制記數系統由戈特弗里德·萊布尼茨於1679年設計,在他1703年發表的文章《論只使用符號0和1的二進制算術,兼論其用途及它賦予伏羲所使用的古老圖形的意義》出現。
與二進制數相關的系統在一些更早的文化中也有出現,包括古埃及、古代中國和古印度。中國的《易經》尤其引起了萊布尼茨的聯想。
Ⅵ 十進制換算二進制
一、 十進制與二進制之間的轉換
(1) 十進制轉換為二進制,分為整數部分和小數部分
① 整數部分
方法:除2取余法,即每次將整數部分除以2,余數為該位權上的數,而商繼續除以2,余數又為上一個位權上的數,這個步驟一直持續下去,直到商為0為止,最後讀數時候,從最後一個余數讀起,一直到最前面的一個余數。下面舉例:
例:將十進制的168轉換為二進制
得出結果 將十進制的168轉換為二進制,(10101000)2
分析:第一步,將168除以2,商84,余數為0。
第二步,將商84除以2,商42餘數為0。
第三步,將商42除以2,商21餘數為0。
第四步,將商21除以2,商10餘數為1。
第五步,將商10除以2,商5餘數為0。
第六步,將商5除以2,商2餘數為1。
第七步,將商2除以2,商1餘數為0。
第八步,將商1除以2,商0餘數為1。
第九步,讀數,因為最後一位是經過多次除以2才得到的,因此它是最高位,讀數字從最後的余數向前讀,即10101000
(2) 小數部分
方法:乘2取整法,即將小數部分乘以2,然後取整數部分,剩下的小數部分繼續乘以2,然後取整數部分,剩下的小數部分又乘以2,一直取到小數部分
為零為止。如果永遠不能為零,就同十進制數的四捨五入一樣,按照要求保留多少位小數時,就根據後面一位是0還是1,取捨,如果是零,舍掉,如果是1,向入一位。換句話說就是0舍1入。讀數要從前面的整數讀到後面的整數,下面舉例:
例1:將0.125換算為二進制
得出結果:將0.125換算為二進制(0.001)2
分析:第一步,將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。
例2,將0.45轉換為二進制(保留到小數點第四位)
大家從上面步驟可以看出,當第五次做乘法時候,得到的結果是0.4,那麼小數部分繼續乘以2,得0.8,0.8又乘以2的,到1.6這樣一直乘下去,最後不可能得到小數部分為零,因此,這個時候只好學習十進制的方法進行四捨五入了,但是二進制只有0和1兩個,於是就出現0舍1入。這個也是計算機在轉換中會產生誤差,但是由於保留位數很多,精度很高,所以可以忽略不計。
那麼,我們可以得出結果將0.45轉換為二進制約等於0.0111
上面介紹的方法是十進制轉換為為二進制的方法,需要大家注意的是:
1) 十進制轉換為二進制,需要分成整數和小數兩個部分分別轉換
2) 當轉換整數時,用的除2取余法,而轉換小數時候,用的是乘2取整法
3) 注意他們的讀數方向
因此,我們從上面的方法,我們可以得出十進制數168.125轉換為二進制為10101000.001,或者十進制數轉換為二進制數約等於10101000.0111。
(3) 二進制轉換為十進制 不分整數和小數部分
方法:按權相加法,即將二進制每位上的數乘以權,然後相加之和即是十進制數。例
將二進制數101.101轉換為十進制數。
得出結果:(101.101)2=(5.625)10
大家在做二進制轉換成十進制需要注意的是
1) 要知道二進制每位的權值
2) 要能求出每位的值
二、 二進制與八進制之間的轉換
首先,我們需要了解一個數學關系,即23=8,24=16,而八進制和十六進制是用這
關系衍生而來的,即用三位二進製表示一位八進制,用四位二進製表示一位十六進制數。
接著,記住4個數字8、4、2、1(23=8、22=4、21=2、20=1)。現在我們來練習二進制與八進制之間的轉換。
(1) 二進制轉換為八進制
方法:取三合一法,即從二進制的小數點為分界點,向左(向右)每三位取成一位,接著將這三位二進制按權相加,得到的數就是一位八位二進制數,然後,按順序進行排列,小數點的位置不變,得到的數字就是我們所求的八進制數。如果向左(向右)取三位後,取到最高(最低)位時候,如果無法湊足三位,可以在小數點最左邊(最右邊),即整數的最高位(最低位)添0,湊足三位。例
①將二進制數101110.101轉換為八進制
得到結果:將101110.101轉換為八進制為56.5
② 將二進制數1101.1轉換為八進制
得到結果:將1101.1轉換為八進制為15.4
(2) 將八進制轉換為二進制
方法:取一分三法,即將一位八進制數分解成三位二進制數,用三位二進制按權相加去湊這位八進制數,小數點位置照舊。例:
① 將八進制數67.54轉換為二進制
因此,將八進制數67.54轉換為二進制數為110111.101100,即110111.1011
大家從上面這道題可以看出,計算八進制轉換為二進制
首先,將八進制按照從左到右,每位展開為三位,小數點位置不變
然後,按每位展開為22,21,20(即4、2、1)三位去做湊數,即a×22+ b×21 +c×20=該位上的數(a=1或者a=0,b=1或者b=0,c=1或者c=0),將abc排列就是該位的二進制數
接著,將每位上轉換成二進制數按順序排列
最後,就得到了八進制轉換成二進制的數字。
以上的方法就是二進制與八進制的互換,大家在做題的時候需要注意的是
1) 他們之間的互換是以一位與三位轉換,這個有別於二進制與十進制轉換
2) 大家在做添0和去0的時候要注意,是在小數點最左邊或者小數點的最右邊(即整數的最高位和小數的最低位)才能添0或者去0,否則將產生錯誤
三、 二進制與十六進制的轉換
方法:與二進制與八進制轉換相似,只不過是一位(十六)與四位(二進制)的轉換,下面具體講解
(1) 二進制轉換為十六進制
方法:取四合一法,即從二進制的小數點為分界點,向左(向右)每四位取成一位,接著將這四位二進制按權相加,得到的數就是一位十六位二進制數,然後,按順序進行排列,小數點的位置不變,得到的數字就是我們所求的十六進制數。如果向左(向右)取四位後,取到最高(最低)位時候,如果無法湊足四位,可以在小數點最左邊(最右邊),即整數的最高位(最低位)添0,湊足四位。
①例:將二進制11101001.1011轉換為十六進制
得到結果:將二進制11101001.1011轉換為十六進制為E9.B
② 例:將101011.101轉換為十六進制
因此得到結果:將二進制101011.101轉換為十六進制為2B.A
Ⅶ 十進制轉化二進制怎麼算
二進制轉十進制
方法一
小數點前或者整數要從右到左用二進制的每個數去乘以2的相應次方並遞增,小數點後則是從左往右乘以二的相應負次方並遞減。
例如:二進制數1101.01轉化成十進制
1101.01(2)=1*20+0*21+1*22+1*23 +0*2-1+1*2-2=1+0+4+8+0+0.25=13.25(10)
所以總結起來通用公式為:
abcd.efg(2)=d*20+c*21+b*22+a*23+e*2-1+f*2-2+g*2-3(10)
方法二
或者用下面這種方法:
把二進制數首先寫成加權系數展開式,然後按十進制加法規則求和。這種做法稱為"按權相加"法。
2的0次方是1(任何數的0次方都是1,0的0次方無意義)
2的1次方是2
2的2次方是4
2的3次方是8
2的4次方是16
2的5次方是32
2的6次方是64
2的7次方是128
2的8次方是256
2的9次方是512
2的10次方是1024
2的11次方是2048
2的12次方是4096
2的13次方是8192
2的14次方是16384
2的15次方是32768
2的16次方是65536
2的17次方是131072
2的18次方是262144
2的19次方是524288
2的20次方是1048576
即:
2的次方
此時,1101=8+4+0+1=13
再比如:二進制數100011轉成十進制數可以看作這樣:
數字中共有三個1 即第六位一個,第二位一個,第一位一個(從右到左),然後對應十進制數即2的0次方+2的1次方+2的5次方, 即
100011=32+0+0+0+2+1=35
Ⅷ 十進制轉二進制怎麼算
十進制整數轉換為二進制整數採用"除2取余,逆序排列"法。
具體做法是:用2去除十進制整數,可以得到一個商和余數;再用2去除商,又會得到一個商和余數,如此進行,直到商為0時為止。
然後把先得到的余數作為二進制數的低位有效位,後得到的余數作為二進制數的高位有效位,依次排列起來。
舉例來說:
87轉換為二進制:
87÷2=43餘1
43÷2=21餘1
21÷2=10餘1
10÷2=5 餘0
5÷2=2餘1
2÷2=1餘0
1÷2=0餘1
從下往上取余數1010111。所以,87[10]=1010111[2].
Ⅸ 二進制的計算方法是怎樣的請舉個例子謝謝,
二進制的運算算術運算二進制的加法:0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位進位);即7=111,10=10103=11。
二進制的減法:0-0=0,0-1=1(向高位借位) 1-0=1,1-1=0 (模二加運算或異或運算) ;
二進制的乘法:0 * 0 = 00 * 1 = 0,1 * 0 = 0,1 * 1 = 1 二進制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (無意義),1÷1 = 1 ;
邏輯運算二進制的或運算:遇1得1 二進制的與運算:遇0得0 二進制的非運算:各位取反。
(9)各進制轉二進制計算方法擴展閱讀:
二進制的轉換:
二進制轉換為其他進制:
1、二進制轉換成十進制:基數乘以權,然後相加,簡化運算時可以把數位數是0的項不寫出來,(因為0乘以其他不為0的數都是0)。小數部分也一樣,但精確度較少。
2、二進制轉換為八進制:採用「三位一並法」(是以小數點為中心向左右兩邊以每三位分組,不足的補上0)這樣就可以輕松的進行轉換。例:將二進制數(11100101.11101011)2轉換成八進制數。 (11100101.11101011)2=(345.353)8
3、二進制轉換為十六進制:採用的是「四位一並法」,整數部分從低位開始,每四位二進制數為一組,最後不足四位的,則在高位加0補足四位為止,也可以不補0。
小數部分從高位開始,每四位二進制數為一組,最後不足四位的,必須在低位加0補足四位,然後用對應的十六進制數來代替,再按順序寫出對應的十六進制數。
Ⅹ 十進制轉二進制有哪些方法呢
利用電腦自帶的計算器工具可快捷完成十進制對二進制的轉換,254的二進制是11111110,具體操作辦法步驟如下:
1、首先,在計算機任務欄中找到「開始」菜單圖標,然後單擊,如下圖所示。