1樓:匿名使用者
計算機中常用的數的進位制主要有:二進位制、八進位制、十六進位制,學習計算機要對其有所瞭解。
2進位制,用兩個阿拉伯數字:0、1;
8進位制,用八個阿拉伯數字:0、1、2、3、4、5、6、7;
10進位制,用十個阿拉伯數字:0到9;
16進位制就是逢16進1,但我們只有0~9這十個數字,所以我們用a,b,c,d,e,f這五個字母來分別表示10,11,12,13,14,15。字母不區分大小寫。
以下簡介各種進位制之間的轉換方法:
一、二進位制轉換十進位制
例:二進位制 「1101100」
1101100 ←二進位制數
6543210 ←排位方法
例如二進位制換算十進位制的演算法:
1*26 + 1*25 + 0*24 + 1*23 + 1* 22 + 0*21 + 0*20
↑ ↑
說明:2代表進位制,後面的數是次方(從右往左數,以0開始)
=64+32+0+8+4+0+0
=108
二、二進位制換算八進位制
例:二進位制的「10110111011」
換八進位制時,從右到左,三位一組,不夠補0,即成了:
010 110 111 011
然後每組中的3個數分別對應4、2、1的狀態,然後將為狀態為1的相加,如:
010 = 2
110 = 4+2 = 6
111 = 4+2+1 = 7
011 = 2+1 = 3
結果為:2673
三、二進位制轉換十六進位制
十六進位制換二進位制的方法也類似,只要每組4位,分別對應8、4、2、1就行了,如分解為:
0101 1011 1011
運算為:
0101 = 4+1 = 5
1011 = 8+2+1 = 11(由於10為a,所以11即b)
1011 = 8+2+1 = 11(由於10為a,所以11即b)
結果為:5bb
四、二進位制數轉換為十進位制數
二進位制數第0位的權值是2的0次方,第1位的權值是2的1次方……
所以,設有一個二進位制數:0110 0100,轉換為10進製為:
計算: 0 * 20 + 0 * 21 + 1 * 22 + 1 * 23 + 0 * 24 + 1 * 25 + 1 * 26 + 0 * 27 = 100
五、八進位制數轉換為十進位制數
八進位制就是逢8進1。
八進位制數採用 0~7這八數來表達一個數。
八進位制數第0位的權值為8的0次方,第1位權值為8的1次方,第2位權值為8的2次方……
所以,設有一個八進位制數:1507,轉換為十進位制為:
計算: 7 * 80 + 0 * 81 + 5 * 82 + 1 * 83 = 839
結果是,八進位制數 1507 轉換成十進位制數為 839
六、十六進位制轉換十進位制
例:2af5換算成10進位制
直接計算就是: 5 * 160 + f * 161 + a * 162 + 2 * 163 = 10997
(別忘了,在上面的計算中,a表示10,而f表示15)、
現在可以看出,所有進位制換算成10進位制,關鍵在於各自的權值不同。
假設有人問你,十進數 1234 為什麼是 一千二百三十四?你儘可以給他這麼一個算式: 1234 = 1 * 103 + 2 * 102 + 3 * 101 + 4 * 100
2樓:小傻
簡介各種進位制之間的轉換方法:
一、二進位制轉換十進位制
例:二進位制 「1101100」
1101100 ←二進位制數
6543210 ←排位方法
例如二進位制換算十進位制的演算法:
1*26 + 1*25 + 0*24 + 1*23 + 1* 22 + 0*21 + 0*20
↑ ↑說明:2代表進位制,後面的數是次方(從右往左數,以0開始)
=64+32+0+8+4+0+0
=108
二、二進位制換算八進位制
例:二進位制的「10110111011」
換八進位制時,從右到左,三位一組,不夠補0,即成了:
010 110 111 011
然後每組中的3個數分別對應4、2、1的狀態,然後將為狀態為1的相加,如:
010 = 2
110 = 4+2 = 6
111 = 4+2+1 = 7
011 = 2+1 = 3
結果為:2673
三、二進位制轉換十六進位制
十六進位制換二進位制的方法也類似,只要每組4位,分別對應8、4、2、1就行了,如分解為:
0101 1011 1011
運算為:
0101 = 4+1 = 5
1011 = 8+2+1 = 11(由於10為a,所以11即b)
1011 = 8+2+1 = 11(由於10為a,所以11即b)
結果為:5bb
四、二進位制數轉換為十進位制數
二進位制數第0位的權值是2的0次方,第1位的權值是2的1次方……
所以,設有一個二進位制數:0110 0100,轉換為10進製為:
計算: 0 * 20 + 0 * 21 + 1 * 22 + 1 * 23 + 0 * 24 + 1 * 25 + 1 * 26 + 0 * 27 = 100
五、八進位制數轉換為十進位制數
八進位制就是逢8進1.
八進位制數採用 0~7這八數來表達一個數.
八進位制數第0位的權值為8的0次方,第1位權值為8的1次方,第2位權值為8的2次方……
所以,設有一個八進位制數:1507,轉換為十進位制為:
計算: 7 * 80 + 0 * 81 + 5 * 82 + 1 * 83 = 839
結果是,八進位制數 1507 轉換成十進位制數為 839
六、十六進位制轉換十進位制
例:2af5換算成10進位制
直接計算就是: 5 * 160 + f * 161 + a * 162 + 2 * 163 = 10997
(別忘了,在上面的計算中,a表示10,而f表示15)、
現在可以看出,所有進位制換算成10進位制,關鍵在於各自的權值不同.
假設有人問你,十進數 1234 為什麼是 一千二百三十四?你儘可以給他這麼一個算式: 1234 = 1 * 103 + 2 * 102 + 3 * 101 + 4 * 100
3樓:匿名使用者
十進位制數與二進位制數之間的轉換
(1) 十進位制整數轉換成二進位制整數
把一個十進位制整數轉換為二進位制整數的方法如下:
把被轉換的十進位制整數反覆地除以2,直到商為0,所得的餘數(從末位讀起)就是這個數的
二進位制表示.簡單地說,就是"除2取餘法".
例如,將十進位制整數( 2 1 5 )
1 0轉換成二進位制整數的方法如下:
於是,( 2 1 5 )
1 0=( 11 0 1 0 111 )
2 轉換成十六進位制整數的方法是"除1 6取餘法".
4樓:匿名使用者
這樣吧,我們假設一個數字10111b,要轉換為8進位制,我們可以先把二進位制數轉換為十進位制,即:1*2^4+0*2^3+1*2^2+1*2^1+1*2^0=23,然後用23除以8,得2,餘7則(10111)2=(27)8
二進位制數00111101轉換成十進位制數的步驟是怎樣的?
5樓:匿名使用者
(00111101)2=(61)10過程:
00111101=從後往前:(第一位數)1乘以
2的0次方+(第二位數)0乘以2的1次方+1乘以2的2次方+1乘以2的3次方+1乘以2的4次方+1乘以2的5次方+0乘以2的6次方+0乘以2的7次方=1+0+4+8+16+32+0+0=61
所以:(00111101)2=(61)10
即:從右至左,換算成十進位制如下:
1*2^0+0*2^1+1*2^2+1*2^3+1*2^4+1*2^5+0*2^6+0*2^7=61
十進位制轉化成為二進位制的原則是:
逢2進1.就是每當是2的n倍時,就進幾位。
舉幾個例子: 1. 2=21=10 2. 5=22+1=100+1=101 3. 6=22+21=100+10=110
從上面可以看出十進位制轉化為二進位制的關鍵是逢二進一。
從3中可以看出,6最大可分解成2的2次方,因為2的3次方就是8了,比6大。6-22=2,2=21,所以6=22+21。根據逢二進一的原則,22的次數是2,所以進2為,就是100。
21的次數為1,所以進一位,就是10。100+10=110。所以將十進位制的6轉化二進位制就是110。
由此可以得出:
9=23+1=1000+1=1001。 因為此題中的1不足2,所以不進位。
二進位制數1101101如何轉化成十進位制數
1101101 2 1 26 1 25 0 24 1 23 1 22 0 21 1 20 109 將二進位制數轉換成十進位制數的方法是 把這個二進位制數的最低一位 第0位 乘以2的0次方 即20 倒數第二位 第1位 乘以2的1次方 即21 一直到最高位 第n位 乘以2的n次方 即2n 最後將各項乘積...
怎樣將英文字母轉化成二進位制輸出,英文字母怎樣轉換成二進位制程式碼的?例如W轉換二進位制1和0是多少?
void printbinary const unsigned char val for int i 7 i 0 i if val 1 用1 0 把2進位制形式寫了出來 尋找該英文的asc值,然後進行二進位制轉換就可以啦 這是計算機是拿手的。問它吧 英文字母怎樣轉換成二進位制 的?例如 w轉換二進位...
十進位制怎麼算,二進位制怎麼算,十進位制化成二進位制怎麼算
10進位制就是逢10進1的進位制數值統計方法,相對的還有2進位制8進位制16進位制。10進位制轉換成其他的都是除以要轉換成的那個數,也就是說轉換成二進位制的就除以2,轉換成八進位制的就除以8,轉換成十六進位制的就除以16,然後倒取餘數。10 2 把20轉換成二進位制,20 2 10.餘數為0,10 ...