2進位制_8進位制_16進位制之間快速轉換的技巧.txt
一)、數制
計算機中採用的是二進位制,因為二進位制具有運算簡單,易實現且可靠,為邏輯設計提供了有利的途徑、節省裝置等優點,為了便於描述,又常用八、十六進位制作為二進位制的縮寫。
一般計數都採用進位計數,其特點是:
(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
二、八、十六進位制轉換成十進位制數。2.8.16--10
方法:按權展開相加、將整數部分和小數部分按轉換方法分別轉換。
十進位制整數轉換成二、八、十六進位制整數。10--2.8.16(整數)
方法:除N取餘,倒向取數。
十進位制小數轉換成二、八、十六進位制小數。10--2.8.16(小數)
方法:乘N取整,正向取數。整數部分按整數轉換原則,小數部分按小數轉換原則,分別進行轉換。
二進位制數與八、十六進位制數的互相轉換。
方法:採用8421法。一位8進位制數正好表示3位2進位制數。一位16進位制數正好表示4位2進位制數。2--8方法:以小數點為界,向左右每3位分成一組,不夠補零。2--16方法:以小數點為界,向左右每4位分成一組,不夠補零。
八、十六進位制數轉換成二進位制數。8.16--2
方法:將每一位8進位制、16進位制的數分為3個、4個二進位制數(逆過程)。
八進位制數轉換成十六進位制數。8--16
方法:把2進位制當做橋樑,先把八進位制數轉換成二進位制數,再把二進位制數轉換成十六進位制數。
計算機中數的表示方法--二進位制
1. 二進位制數的運算
電子計算機一般採用二進位制數。二進位制數只有0和1兩個基本數字,容易在電氣元件中實現。
二進位制數的運算公式:
0+0=0 0×0=0
0+1=1 0×1=0
1+0=1 1×0=0
1+1=10 1×1=1
2.十進位制和二進位制間的轉換
(1) 十進位制數轉換成二進位制
將十進位制整數轉換成二進位制整數時,只要將它一次一次地被2除,得到的餘數從最後一個餘數讀起)就是二進位制表示的數。
2) 二進位制數轉換成十進位制數
將一個二進位制數的整數轉換成十進位制數,只要將按權展開。
例:11011=1*24(2的4次方)+1*23(2的3次方)+0*22(2的2次方)+1*21(2的1次方)+1*20(2的0次方)=27
3. 不同進位制數的轉換
二進位制數和八進位制數互換:二進位制數轉換成八進位制數時,只要從小數點位置開始,向左或向右每三位二進位制劃分為一組(不足三位時可補0),然後寫出每一組二進位制數所對應的八進位制數碼即可。
例:將二進位制數(10110001.111)轉換成八進位制數:
010 110 001. 111
2 6 1 7
即二進位制數(10110001.111)轉換成八進位制數是(261.7)。反過來,將每位八進位制數分別用三位二進位制數表示,就可完成八進位制數和二進位制數的轉換。
二進位制數和十六進位制數互換:二進位制數轉換成十六進位制數時,只要從小數點位置開始,向左或向右每四位二進位制劃分為一組(不足四位時可補0),然後寫出每一組二進位制數所對應的十六進位制數碼即可。
例:將二進位制數(11011100110.1101)轉換成十六進位制數:
0110 1110 0110. 1101
6 E 6 D
即二進位制數(11011100110.1101)轉換成十六進位制數是(6E6.D)。反過來,將每位十六進位制數分別用三位二進位制數表示,就可完成十六進位制數和二進位制數的轉換。
八進位制數、十六進位制數和十進位制數的轉換:這三者轉換時,可把二進位制數作為媒介,先把代轉換的數轉換成二進位制數,然後將二進位制數轉換成要求轉換的數制形式。
參考資料:http://zhidao.baidu.com/question/36627417.html?fr=ala0
計算機中採用的是二進位制,因為二進位制具有運算簡單,易實現且可靠,為邏輯設計提供了有利的途徑、節省裝置等優點,為了便於描述,又常用八、十六進位制作為二進位制的縮寫。
一般計數都採用進位計數,其特點是:
(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
二、八、十六進位制轉換成十進位制數。2.8.16--10
方法:按權展開相加、將整數部分和小數部分按轉換方法分別轉換。
十進位制整數轉換成二、八、十六進位制整數。10--2.8.16(整數)
方法:除N取餘,倒向取數。
十進位制小數轉換成二、八、十六進位制小數。10--2.8.16(小數)
方法:乘N取整,正向取數。整數部分按整數轉換原則,小數部分按小數轉換原則,分別進行轉換。
二進位制數與八、十六進位制數的互相轉換。
方法:採用8421法。一位8進位制數正好表示3位2進位制數。一位16進位制數正好表示4位2進位制數。2--8方法:以小數點為界,向左右每3位分成一組,不夠補零。2--16方法:以小數點為界,向左右每4位分成一組,不夠補零。
八、十六進位制數轉換成二進位制數。8.16--2
方法:將每一位8進位制、16進位制的數分為3個、4個二進位制數(逆過程)。
八進位制數轉換成十六進位制數。8--16
方法:把2進位制當做橋樑,先把八進位制數轉換成二進位制數,再把二進位制數轉換成十六進位制數。
計算機中數的表示方法--二進位制
1. 二進位制數的運算
電子計算機一般採用二進位制數。二進位制數只有0和1兩個基本數字,容易在電氣元件中實現。
二進位制數的運算公式:
0+0=0 0×0=0
0+1=1 0×1=0
1+0=1 1×0=0
1+1=10 1×1=1
2.十進位制和二進位制間的轉換
(1) 十進位制數轉換成二進位制
將十進位制整數轉換成二進位制整數時,只要將它一次一次地被2除,得到的餘數從最後一個餘數讀起)就是二進位制表示的數。
2) 二進位制數轉換成十進位制數
將一個二進位制數的整數轉換成十進位制數,只要將按權展開。
例:11011=1*24(2的4次方)+1*23(2的3次方)+0*22(2的2次方)+1*21(2的1次方)+1*20(2的0次方)=27
3. 不同進位制數的轉換
二進位制數和八進位制數互換:二進位制數轉換成八進位制數時,只要從小數點位置開始,向左或向右每三位二進位制劃分為一組(不足三位時可補0),然後寫出每一組二進位制數所對應的八進位制數碼即可。
例:將二進位制數(10110001.111)轉換成八進位制數:
010 110 001. 111
2 6 1 7
即二進位制數(10110001.111)轉換成八進位制數是(261.7)。反過來,將每位八進位制數分別用三位二進位制數表示,就可完成八進位制數和二進位制數的轉換。
二進位制數和十六進位制數互換:二進位制數轉換成十六進位制數時,只要從小數點位置開始,向左或向右每四位二進位制劃分為一組(不足四位時可補0),然後寫出每一組二進位制數所對應的十六進位制數碼即可。
例:將二進位制數(11011100110.1101)轉換成十六進位制數:
0110 1110 0110. 1101
6 E 6 D
即二進位制數(11011100110.1101)轉換成十六進位制數是(6E6.D)。反過來,將每位十六進位制數分別用三位二進位制數表示,就可完成十六進位制數和二進位制數的轉換。
八進位制數、十六進位制數和十進位制數的轉換:這三者轉換時,可把二進位制數作為媒介,先把代轉換的數轉換成二進位制數,然後將二進位制數轉換成要求轉換的數制形式。
參考資料:http://zhidao.baidu.com/question/36627417.html?fr=ala0
相關文章
- JavaScript 進位制轉換(2進位制、8進位制、10進位制、16進位制之間的轉換)JavaScript
- C# 2進位制、8進位制、10進位制、16進位制...各種進位制間的輕鬆轉換C#
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- 大話二進位制,八進位制,十進位制,十六進位制之間的轉換
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- Qt進位制轉換(十進位制轉十六進位制)QT
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 口算 16 進位制轉換 10 進位制,但只適合兩位的 16 進位制
- shell 中轉換16進位制10進位制
- 二進位制轉十進位制快速轉換方法
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- rowid與10進位制和2進位制之間的轉換
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- 【進位制轉換】十進位制與十六進位制相互轉換方法
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- Python 進位制互相轉換(二進位制、十進位制和十六進位制)Python
- lua之m進位制轉換為n進位制-任意進位制轉換演算法演算法
- 2/8/16轉10進位制
- 二進位制轉十進位制快速方法
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 十六進位制轉換為八進位制
- 十六進位制轉換為十進位制
- 10進位制轉8進位制(棧操作)
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- 【轉帖】Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- python進位制轉換(二進位制、十進位制和十六進位制)及注意事項Python
- oracle_16進位制與10進位制轉換小示例Oracle
- sql實現10進位制16進位制轉換函式SQL函式
- 10進位制 VS 2進位制
- JavaScript十進位制轉換為二進位制JavaScript
- Oracle二進位制與十進位制轉換Oracle
- 1474 十進位制轉m進位制+1475 m進位制轉十進位制
- 10進位制和16進位制互轉的例子
- (轉)【iOS 開發】二進位制、十進位制、十六進位制相互轉換的方法iOS
- Java中8進位制和16進位制的表示方法Java
- n進位制轉十進位制