tft每日頭條

 > 圖文

 > 二進制與十進制16進制的轉換

二進制與十進制16進制的轉換

圖文 更新时间:2024-07-18 12:19:18

二進制與十進制16進制的轉換?從大學開始系統的接觸計算機專業,到現在已經過去十幾年了,今天整理一下基礎的進制轉換,希望給還在上高中的表妹一個入門的引導,早日熟悉這個行業,我來為大家科普一下關于二進制與十進制16進制的轉換?下面希望有你要的答案,我們一起來看看吧!

二進制與十進制16進制的轉換(二進制八進制十進制和十六進制等常用數制及其相互轉換)1

二進制與十進制16進制的轉換

從大學開始系統的接觸計算機專業,到現在已經過去十幾年了,今天整理一下基礎的進制轉換,希望給還在上高中的表妹一個入門的引導,早日熟悉這個行業。

一、二進制、八進制、十進制和十六進制是如何定義的?

二進制是Binary,簡寫為B,二進制隻有0和1兩個值,計算方法是逢二進一。比如01B 01B(其中B是Binary的首字母,即二進制的簡寫),結果就是10B,因為逢二進一,低位的1相加後得2就向高位進1;

八進制是Octal,簡寫為O,八進制是指有0~7這8個值的表示法,計算方法是逢8進1。比如17O 23O=42O,因為逢8進一,低位的7 3=10,10在八進制就是12,加上原來高位的1 2,結果就是42O;

十進制是Decimal,簡寫為D,十進制即咱們日常使用的0~9。咱們日常做的計算都是十進制的,計算方法是逢十進一,比如21D 11D=32D;

十六進制是Hexadecimal,簡寫為H,十六進制用數字0-9和字母a-f(或其大寫A-F)表示0到15,計算方法是逢16進1,比如1DH 25H=42H,因為逢16進一,低位的D相當于十進制的13,而5即可以看成是十進制的5,相加得18,而18-16=2,因此低位的值為2,高位的值即1 2再加上進位1即得4,高位結果就是4,最後結果是42H;

其中計算機采用的是二進制作為基礎,在此基礎上拓展了八進制、十進制、十六進制等。

二、為什麼二進制是基礎?

二進制如今主要⽤在電⼦技術的數字電路中。⽐如我們經常使⽤的計算機能夠識别的語⾔就是二進制語⾔。數字電路中的⾼、低電平;導通、截⽌;開、關;有、無;真、假等等都是二進制表⽰,二進制的邏輯電路使⽤0和1表⽰。

采用二進制主要有以下幾個原因:

1、技術實現簡單。計算機是由邏輯電路組成,邏輯電路通常隻有兩種狀态,開關的接通和斷開,正好用“0”“1”表示。  

2、運算規則簡單,兩個二進制數的和、積運算組合簡單。二進制數加法和乘法僅各有3條運算規則( 0+0=0,0+1=1,1+1=1 0和0×0=0,0×1=0,1×1=1 )運算規則簡單,有利于簡化内部結構,提高運算速度。   

3、适合邏輯運算,二進制隻有兩個數字,和邏輯代數中的“真”“假”相吻合。  

4、易于進行轉換,二進制數能很容易地轉換成八進制、十六進制,也能轉換成十進制。  

三、為什麼有了二進制還需要使用八進制、十進制和十六進制?

八進制和⼗六進制在現實主要⽤在電⼦技術、計算機編程等領域,這是為了配合二進制⽽使⽤的。上⾯我們說過二進制是計算機所能識别的最直接語⾔,但是二進制的位數太多,不好記錄,這時就需要把二進制轉化為八進制或十六進制。舉個例子,買一件商品花費1百塊錢,可以使用1元的人民币支付,也可以使用1百元的人民币支付,相對來說,使用百元更方便一點。

⼗進制主要在日常⽣活中,⽽二進制、八進制、十六進制主要⽤在電⼦技術⾏業。二進制是數字電路、處理器等最直接的語⾔;

八進制以及十六進制都是進⾏存儲記憶,但八進制較少使⽤。十六進制⽤來表⽰處理器⾥的寄存器、存儲器的地址、數據。

四、進制之間如何轉換?

主要思路:二進制數,八進制數、十六進制數可以采用按權展開法轉化為十進制數,十進制轉化為R進制要分為兩部分【這裡R進制是泛指,可以代表二進制、八進制、十六進制等】,其中整數部分要除R取餘,直到商為0,小數部分要乘R取餘直到得到整數。

1. 十進制轉R進制

1.1. 十進制轉二進制

(1)十進制整數轉二進制

十進制整數轉換成二進制采用“除2倒取餘法”,即将十進制整數除以2,得到一個商和一個餘數;再将商除以2,又得到一個商和一個餘數;以此類推,直到商等于零為止。

例題: 175D = ______ B

解析:如下圖所示,将175除以2,得餘數,直到不能整除,然後再将餘數從下至上倒取。得到結果:10101111B。

(2)十進制小數轉二進制

十進制小數轉換成二進制小數采用 “乘2取整,順序排列” 法。

具體做法是:用2乘十進制小數,可以得到積,将積的整數部分取出,再用2乘餘下的小數 部分,又得到一個積,再将積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。

然後把取出的整數部分按順序排列起來,先取的整數作為二進制小數的高位有效位,後取的整數作為低位有效位。

例題: 0.68D = ______ B(精确到小數點後5位)

解析:如下圖所示,0.68乘以2,取整,然後再将小數乘以2,取整,直到達到題目要求精度。得到結果:0.10101B

1.2. 十進制轉八進制

思路和十進制轉二進制一樣,參考如下例題:

例題: 10.68D = ______ Q(精确到小數點後3位)

解析:如下圖所示,整數部分除以8取餘數,直到無法整除。小數部分0.68乘以8,取整,然後再将小數乘以8,取整,直到達到題目要求精度。得到結果:12.534Q

1.3. 十進制轉十六進制

思路和十進制轉二進制一樣,參考如下例題:

例題: 25.68D = ______ H(精确到小數點後3位)

解析:如下圖所示,整數部分除以16取餘數,直到無法整除。小數部分0.68乘以16,取整,然後再将小數乘以16,取整,直到達到題目要求精度。得到結果:19.ae1H

2. R進制轉十進制

2.1. 二進制轉十進制

方法為:把二進制數按權展開、相加即得十進制數。(具體用法如下圖)

例題: 1011 0111B = ______ D

解析:1×27 0×26 1×25 1×24 0×23 1×22 1×22 1×20 = 128 0 32 16 0 4 2 1=183

2.2. 八進制轉十進制

八進制轉十進制的方法和二進制轉十進制一樣。

例題: 302Q = ______ D

302.46Q = ______ D

解析:302Q = 3×8² 0×8¹ 2×8⁰ = 192 0 2 = 194D

302.46Q = 3×8² 0×8¹ 2×8⁰ 4×8⁻¹ 6×8⁻² = 192 0 2 0.5 0.09375= 194.59375D

2.3. 十六進制轉十進制

例題: 23daH = ______ D

解析:23daH = 2×163 3×162 d×161 a×160 = 9178D

3. 二進制轉八進制

二進制轉換成八進制的方法是,取三合一法,即從二進制的小數點為分界點,向左(或向右)每三位取成一位。

例題: 1010 0100B = ____Q

解析:1010 0100B = 010 001 100B=244Q

4. 二進制轉十六進制

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

例題: 1010 0100B = ____H

解析:1010 0100B = 1010 0100 B = a4H

總結:二進制轉八進制或者二進制轉換成十六進制,也可以先轉換成十進制,再轉換成目标進制。

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved