二進位、八進位、十進位、十六進位數的轉換方法

2021-01-14 電工之家



一 、數制
計算機中採用的是二進位,因為二進位具有運算簡單,易實現且可靠,為邏輯設計提供了有利的途徑、節省設備等優點,為了便於描述,又常用八、十六進位作為二進位的縮寫。
一般計數都採用進位計數,其特點是:
(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

三 、二進位轉換成八進位數

(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

四 、二進位與十六進位之間的轉換

(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進位轉10進位最簡便方法??
如:(10111)2
=(((((0*2+1)*2+0)*2+1)*2+1)*2+1)10
=((((1*2+0)*2+1)*2+1)*2+1)10
=((((2+0)*2+1)*2+1)*2+1)10
=(((2*2+1)*2+1)*2+1)10
=(((4+1)*2+1)*2+1)10
=((5*2+1)*2+1)10
=((10+1)*2+1)10
=(11*2+1)10
=(22+1)10
=(23)10

來源:網際網路

看完不要忘記分享哦!



相關焦點

  • 二進位、八進位、十進位和十六進位數之間的轉換方法
    3、二、八、十進位數之間轉換(1)二進位 數與八進位數之間的轉換轉換方法①把二進位數轉換為八進位數時,按「三位並一位」的方法進行。當然,人們輸入計算機的十進位被轉換成二進位進行計算,計算後的結果又由二進位轉換成十進位,這都由作業系統自動完成,並不需要人們手工去做,學習彙編語言,就必須了解二進位(還有八進位/十六進位)。 數制也稱計數制,是用一組固定的符號和統一的規則來表示數值的方法。人們通常採用的數制有十進位、二進位、八進位和十六進位。
  • 二進位,八進位,十進位,十六進位轉換詳解~
    規則逢二進一逢八進一逢十進一逢十六進一權2^i-18^i-110^i-116^i-12.進位轉換十進位01234567        2.  方法二:八進位···>十進位···>二進位             2268 = 2×8^2 + 2×8^1 + 6×8^0 = 15010             15010 = 100101102       (一位八進位數可轉換為三位二進位數,整數不夠三位在左側補0,小數在右側補0)      100101102 = (
  • 10、進位轉換:二進位、八進位、十六進位、十進位之間的轉換
    將二進位、八進位、十六進位轉換為十進位二進位、八進位和十六進位向十進位轉換都非常容易,就是「按權相加」。所謂「權」,也即「位權」。假設當前數字是 N 進位,那麼:更加通俗的理解是,假設一個多位數(由多個數字組成的數)某位上的數字是 1,那麼它所表示的數值大小就是該位的位權。
  • 二進位、八進位、十進位與十六進位
    (0.16)8=(0.00111)2=(0. 0011 1000)2=(0.38)16訣竅:八進位直接轉換成十六進位比較費力,因此,最好先將八進位轉換成二進位,然後再轉換成十六進位。(A7)16=(1010 0111)2【例2】將十六進位數(0.D4)16轉換成二進位數。(0.D4)16=(0. 1101 0100)2訣竅:十六進位轉換成二進位與二進位轉換成十六進位相反。
  • 計算機的語言——二進位,十進位、八進位、十六進位與二進位之間的轉換
    一、進位的概念計算機中使用二進位編碼(只有0和1)表示數據,且只存在二進位。按權展開求和,用權10x表示數碼的位置,等號=左右表達式相等。註:十六進位數前兩個數字必須為 0X(十六進位標誌)例如:0X213     -0X30       +0X56      -0X12A二、進位轉換
  • 二進位,八進位,十進位,十六進位之間的轉換
    二進位轉換首先來看十進位到二進位:除2取餘數 最後把餘數倒過來 100101比如:十進位數37所以轉換成的二進位數字為:100101再來八進位到二進位:一個八進位的位拆分成一個三位的二進位數>十進位到八進位:除8取餘數 最後把餘數倒過來同時我們也可以先將十進位轉換成二進位,然後將二進位又轉換成八進位比如:2456 轉化成八進位數字:46302456/8=307,餘0;307/8=38,餘3;38/8=4
  • 計算機基礎進位轉換(二進位、八進位、十進位、十六進位)
    1.十進位轉R進位1.1 十進位轉二進位十進位整數轉二進位十進位整數轉換成二進位採用「除2倒取餘」,十進位小數轉換成二進位小數採用
  • 二進位、八進位和十六進位數之間的轉換
    (1)二進位數轉換為十六進位轉換方法與二進位數轉換為八進位類似,只不過是四位合一位。如:將10111101010.010001B轉換為十六進位。以小數點為基準,對於整數部分,從右向左,四位一組,不足四位前面補0。
  • 關於二進位、十進位、八進位、十六進位數據轉換計算方法詳細總結
    ) 注意他們的讀數方向 因此,我們從上面的方法,我們可以得出十進位數168.125轉換為二進位為10101000.001,或者十進位數轉換為二進位數約等於10101000.0111。(2) 二進位轉換為十進位 不分整數和小數部分 方法:按權相加法,即將二進位每位上的數乘以權,然後相加之和即是十進位數。例 將二進位數101.101轉換為十進位數。
  • 二進位、八進位、十進位、十六進位轉換計算方法
    進位也就是進位位,我們常用的進位包括:二進位、八進位、十進位與十六進位,它們之間區別在於數運算時是逢幾進一位。比如二進位是逢2進一位,十進位也就是我們常用的0-9是逢10進一位。
  • 二進位、十進位、八進位、十六進位間的相互轉換函數
    二進位、十進位、八進位、十六進位間的相互轉換函數1、輸入任意一個十進位的整數,將其分別轉換為二進位、八進位、十六進位。{int num;char a[39];//定義一個字符數組,用於存儲字符串cout<<"Entre num:"<<endl;cin>>num;cout<<"二進位
  • 6、計算機進位之二進位、十進位、十六進位之間的轉換
    4、進位之間的轉換4.1、正整數的十進位轉換二進位將一個十進位數除以二,得到的商再除以二,依此類推直到商等於一或零時為止,倒取除得的餘數,即換算為二進位數的結果4.2、二進位轉換為十進位二進位轉十進位的轉換原理:從二進位的右邊第一個數開始,每一個乘以2的n次方,n從0開始,每次遞增1。然後得出來的每個數相加即是十進位數。
  • 二進位-八進位-十進位-十六進位之間的相互轉換
    ,最近用到數字晶片74HC125,涉及到TTL-CMOLS-進位轉換,三個方面的知識,重新拿起書本,再查找資料,匯總信息如下:01:二進位-轉為-八進位//方法://每3位為一組,因為8進位數,需要3bit數據表示0~7,逢八進一;案例1:(1100 1110)2=(11 001 110)2=(316)8
  • 十進位轉二、八、十六進位
    微信:15338817400有時候服務端需要二進位的字符串或者十六進位(加密token一般不會用十進位)所以十進位和十六進位、二進位互相轉化顯得十分重要1、十進位轉二進位二進位如何轉十進位,十進位如何轉二進位2、  負整數轉換成二進位方法:先是將對應的正整數轉換成二進位後,對二進位取反,然後對結果再加一。還以42為例,負整數就是-42,如圖4所示為方法解釋。
  • 個人總結——二進位、十進位、十六進位轉換的方法
    近期和同事溝通時發現很多小夥伴多進位的轉換不太清晰,所以趁著周末自己總結了一下和大家分享想,下面先了解下定義。
  • 進位轉換 二進位轉十進位
    上節課我們學習了十進位轉換成二進位的方法,那二進位轉換十進位是怎麼轉換的呢?
  • 二進位與十六進位之間互相轉換
    通過上節課的學習,我們掌握了二進位與八進位互相轉換的方法(我們介紹的是421法),我們進行知識遷移,二進位數轉換成十六進位數的方法我們用
  • 二進位、八進位、十進位、十六進位之間的轉換
    反過來,當我們看到 FD時,如何迅速將它轉換為二進位數呢?先轉換F:        看到F,我們需知道它是15(可能你還不熟悉A~F這六個數),然後15如何用8421湊呢?應該是8 + 4 + 2 + 1,所以四位全為1 :1111。接著轉換 D:        看到D,知道它是13,13如何用8421湊呢?
  • 二進位與八進位互相轉換
    上節課我們學習了二進位轉換十進位,那二進位與常用的八進位之間是如何互相轉換的呢?下面我們先看看二進位與八進位的轉換方法。
  • python進位轉換:十進位轉二進位的用法
    我們在學習python時候肯定會碰到關於進位轉換,其實這是非常簡單的,這個就像小學學習數學乘法口訣意義,只要記住轉換口訣即可輕鬆應用,一起來看下具體的操作內容吧~一、python進位轉換dec(十進位)—> bin(二進位)dec(十進位)—>