計算機進制轉換


目錄:

  一、引言

  二、進制簡介

  三、二進制和十六進制的轉換

  四、其他

 

一、引言

  對於進制,我們都很熟悉,生活中比如時間,每60秒鍾進一分鍾,每60分鍾進一小時,每12個月進一年等;比如在數學里,10進制用得最多;計算機里常用的就是二進制、八進制和十六進制,其中最常用的又非二進制和十六進制莫屬了,下面我們一起來學習一下計算機的進制是怎么一回事。

  

二、進制簡介

  1、二進制

  (1)二進制簡介

  提到計算機進制,就不得不說二進制,二進制是計算技術中廣泛采用的一種數制。

  二進制數據是用0和1兩個數碼來表示的數。它的基數為2,進位規則是“逢二進一”,借位規則是“借一當二”,由18世紀德國數理哲學大師萊布尼茲發現。當前的計算機系統使用的基本上是二進制系統,數據在計算機中主要是以補碼的形式存儲的。

  計算機中的二進制則是一個非常微小的開關,用“開”來表示1,“關”來表示0。

  二進制英文是Binary,簡寫為B。

  說到二進制,就不得不提到ASCII表,全稱 American Standard Code for Information Interchange(即美國信息交換標准代碼),是基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐。它是現今最通用的系統,並等同於國際標准ISO/IEC 646。具體內容如下圖(圖片來源於百度百科):

  (2)二進制表示方法

十進制  0      1      2     3     4     5     6     7     8     9

二進制 0000   0001   0010  0011  0100  0101  0110  0111  1000  1001 

  

  2、八進制

  (1)八進制簡介

  八進制,Octal,縮寫OCT或O,一種以8為基數的計數法,采用0,1,2,3,4,5,6,7八個數字,逢八進1。一些編程語言中常常以數字0開始表明該數字是八進制。八進制的數和二進制數可以按位對應(八進制一位對應二進制三位),因此常應用在計算機語言中。

  由於十六進制一位可以對應4位二進制數字,用十六進制來表示二進制較為方便。因此,八進制的應用不如十六進制。有一些程序設計語言提供了使用八進制符號來表示數字的能力,而且還是有一些比較古老的Unix應用在使用八進制。

  八進制英文是Octal,簡寫為O。

  (2)八進制表示方法  

二進制     八進制
 001         1
 010         2
 100         4
 111         7 
1000 10

  

  3、十六進制

  (1)十六進制簡介

  十六進制(簡寫為hex或下標16)在數學中是一種逢16進1的進位制。一般用數字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,這些稱作十六進制數字。如今的16進制則普遍應用在計算機領域,這是因為將4個位元(Bit)化成單獨的16進制數字不太困難。1字節可以表示成2個連續的16進制數字。本質上,十六進制也是二進制,但是是二進制的一種優化,在表示和閱讀上較二進制方便許多。

   十六進制英文為Hexadecimal,簡寫為H。

  (2)十六進制表示方法

二進制                    十六進制
0000 0001                  1
0000 1000                  8
0001 1100                 1C
1000 1111                 8F                

 

三、二進制和十六進制的轉換

  1、十六機制與十進制的對應關系:

十進制     0    1   2  3  4  5  6  7  8  9  10   11   12    13  14  15

十六進制    0    1   2  3  4  5  6  7  8  9  A   B    C   D   E   F

  2、十六進制與二進制的對應關系:

十六進制  0   1    2   3    4    5    6   7    8   9    A    B    C   D    E    F

二進制  0000  0001  0010  0011  0100  0101  0110  0111  1000  1001  1010  1011  1100  1101  1110  1111

   更直觀的對應關系,見下圖所示:

  

  3、二進制轉十六進制的方法

  方法為“ 取四合一法 ”,即從二進制的小數點為分界點,向左(或向右)每四位取成一位。

  比如:

每四個二進制位看成一個十六進制位 ,如下:

二進制   1010  1000  1100.1000      
十六進制   A       8       C       8

則此二進制數轉成十六進制的表示:A8C8

  這里需要注意的是,在向左(或向右)取四位時,取到最高位(最低位)如果無法湊足四位,就可以在小數點的最左邊(或最右邊)補0,再進行換算。

每四個二進制位看成一個十六進制位 ,如下:

二進制     10  1000  1100.10 --> 0010  1000 1100.1000    
十六進制                           2     8    C    8

則此二進制數轉成十六進制的表示:28C8            

  十六進制的表示法,用字母 H 后綴表示,比如BH就表示十六進制數11;也可以用0X前綴表示,比如0X23就是16進制的23,以此類推。

十六進制前綴表示法( 0x ):0x23     對應16進制的 23
十六進制后綴表示法( H ):AH        對應16進制的 A

  4、十六進制轉二進制的方法

  此時,轉換方法反過來了,變成了" 一分四法 ",即一個十六進制數分成四個二進制數,用四位二進制按權相加,最后得到二進制,小數點位置不變。

十六進制     A2.B3

十六進制    二進制
    A      1010
    2      0010
    .        .
    B      1011
    3      0011

最后合在一起:1010 0010.1011 0011

 

四、其他

  參考文章:https://jingyan.baidu.com/article/47a29f24292608c0142399cb.html

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM