十六進位制換算,十六進位制轉換成十進位制的具體演算法?

2021-12-19 00:02:32 字數 6448 閱讀 8458

1樓:轔這

電腦裡面的附件裡有計算器,檢視科學型,你可以任意轉換十六進位制和十進位制。

2樓:匿名使用者

十六個進一個就夠了啊 ~

3樓:瀟湘風月

⒉計算機中常用的進位制

二進位制、八進位制、十六進位制

進位制 數 字 進位方法

十進位制 0、1、2、3、4、5、6、7、8、9 逢十進一

二進位制 0、1 逢二進一

八進位制 0、1、2、3、4、5、6、7 逢八進一

十六進位制 0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f 逢十六進一

這些進位制與我們日常生活中的進位制有怎樣的關係呢?

我們日常生活中還有哪些進位制?

二進位制 八進位制 十進位制 十六進位制

1 1 1 1

10 2 2 2

11 3 3 3

100 4 4 4

101 5 5 5

110 6 6 6

111 7 7 7

1000 10 8 8

1001 11 9 9

1010 12 10 a

1011 13 11 b

1100 14 12 c

1101 15 13 d

1110 16 14 e

1111 17 15 f

10000 20 16 10

三、利用知識完成任務

⒈二進位制與十進位制的轉換。

⑴二進位制轉換成十進位制

把十進位制數17轉換二進位制數。

2 17 1(最低位)

2 8 0

2 4 0

2 2 0

1 1(最高位)

結果等於10001

⒉二進位制轉換成十進位制

把二進位制數11011轉換成十進位制。

(11011)2=1×24 1×23 0×22 1×21 1×20

=16 8 0 2 1

=27⒊學生練習

把十進位制數37轉換成二進位制數,然後把算出的二進位制結果再轉換成十進數。

看看我們最終算出來的結果是不是37。

如果不是,那是為什麼?

⒋小結:同學們,我們剛才熟悉了計算機的二進位制,也瞭解了二進位制與十進位制的轉換,我們常用的計算器就是運用的二進位制的原理進行一些常用的算術運算。

因為二進位制有一個很突出的特點,它只有兩個數,而我們的計算器要運算的話,就是通過電流的大小或者有電與無電的區別來進行的,電流的大小或者有電無電分別代表數字1和0,從而實現了我們常用的算術運算。

我們剛剛學習了二進位制與十進位制的轉換,那麼八進位制和十六進位制怎樣和十進位制進行轉換呢?我們又該怎樣去做?我們能不能借鑑一下剛才的方法?為什麼?

學生分組討論,教師巡視、指導。

(學生回答,教師總結)

⒌八進位制、十六進位制與十進位制的轉換。

⑴十進位制數轉換成八進位制數

8 247 7(最低位)

8 30 6

3 3(最高位)

結果等於367

⑵八進位制數轉換成十進位制數

(367)8=3×82 6×81 7×80

=192 48 7

=(247)10

⑶十進位制換成十六進位制

16 578 2(最低位)

16 36 4

2 2(最高位)

結果等於242

⑷十六進位制轉換成十進位制數

(242)16=2×162 4×161 2×160

=512 64 2

=578

十六進位制轉換成十進位制的具體演算法?

4樓:sa_sa_陳

十六進位制轉換成十進位制的具體演算法是:

1、首先明白16進位制數(從右到左數是第0位,第1位,第2位……)的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方,依次這樣排列下去。

2、明白abcdef表示的二進位制數字分別是10,11,12,13,14,15。

3、十六進位制轉換成十進位制的公式是:要從右到左用二進位制的每個數去乘以16的相應次方,然後這些數字相加就是了。

例1:2af5換算成10進位制:

第0位: 5 * 16^0 = 5

第1位: f * 16^1 =15*16^1= 240

第2位: a * 16^2= 10* 16^2=2560

第3位: 2 * 16^3 = 8192

結果就是:5 * 16^0 + 15 * 16^1 + 10 * 16^2 + 2 * 16^3 = 10997

例2:ce換算成10進位制:

第0位:e*16^0=14*16^0=14

第1位:c*16^1=12*16^1=192

結果就是:14*16^0+12*16^1=206

16進位制即逢16進1,每一位上可以是從小到大為0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f共16個大小不同的數。16進位制轉換即16進位制與其他不同進位制之間的換算轉換。

5樓:匿名使用者

(一)十六進位制化為十進位制方法:

用個位數+十位數*16+百位數*256+千位數*4096+...相乘的時候,前面的一位數乘以的數是十後面一位數乘以數的16倍.

具體案例如下:

(ab)=a×16+b=(171)

(abc)=a×256+b×16+c=(2748)(二)十進位制化為十六進位制的方法

把十進位制轉十六進位制按照除16取餘,直到商為0為止。(具體用法如下圖)

6樓:匿名使用者

16進位制到十進位制的轉換方法:

16進位制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方……

所以,在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。

例:2af5換算成10進位制:

用豎式計算:

第0位:5 * 16^0 = 5

第1位:f * 16^1 = 240

第2位:a * 16^2= 2560

第3位:2 * 16^3 = 8192

-------------------------------------

10997

直接計算就是:

5 * 16^0 + f * 16^1 + a * 16^2 + 2 * 16^3 = 10997

7樓:玩玩貓兒

十六進位制是逢十六進一,轉換成十進位制要逢十進一的

8樓:

^十六進位制

轉十進位制:

從個位起第i位乘以16的i-1次方

比如0x233 = 2*16^2 + 3*16^1 + 3*16^0 = 512 + 48 + 3 = 563

0x666 = 6*16^2 + 6*16^1 + 6*16^0 = 1536 + 96 + 6 = 1638

0x7fff = 7*16^3+15*16^2+15*16^1+15*16^0=28672+3840+240+15=32767

十進位制轉十六進位制:

除十六取餘數

比如233 ÷ 16 = 14 ......914 ÷ 16 = 0 ......14

倒著寫就是0xe9

32768 ÷ 16 = 2048 ......02048 ÷ 16 = 128......0128 ÷ 16 = 8......0

8 ÷ 16 = 0......8

倒著寫就是0x8000

演算法實現:

十六進位制轉十進位制:

#include

#include

char buf[20];

int len,_pow,ans=0;

int trans(char hex)

int main()

printf("%d\n",ans);

return 0;

}十進位制轉十六進位制:

#include

char trans(int deci)

int n,len=0;

char hex[20];

int main()

for (int i=len-1;i>=0;i--)putchar(hex[i]);//跟手算一樣,要倒著輸出return 0;}

9樓:匿名使用者

十進位制會算吧 比如111 就是1*10^2+1*10^1+1*10^0 十六進位制只不過就是把其中的10換成16罷了

10樓:000初夏

16進位制是逢16進1,

用a,b,c,d,e,f這六個字母來分別表示10,11,12,13,14,15。字母不區分大小寫。

在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。

11樓:匿名使用者

十六進位制轉換成十進位制方法:「按權求和」,例十六進數:(2af5)h=2*16^3+10*16^2+15*16^1+5*16^0=8192+2560+240+5=10997。

十六進位制(英文名稱:hexadecimal),是計算機中資料的一種表示方法。同我們日常生活中的表示法不一樣。

它由0-9,a-f組成,字母不區分大小寫。與10進位制的對應關係是:0-9對應0-9;a-f對應10-15;n進位制的數可以用0~(n-1)的數表示,超過9的用字母a-f。

十進位制,即①滿十進一,滿二十進二,以此類推……②按權展開,第一位權為10^0,第二位10^1……以此類推,第n位10^(n-1),該數的數值等於每位位的數值*該位對應的權值之和。

進位制也就是進位計數制,是人為定義的帶進位的計數方法(有不帶進位的計數方法,比如原始的結繩計數法,唱票時常用的「正」字計數法,以及類似的tally mark計數)。 對於任何一種進位制---x進位制,就表示每一位置上的數運算時都是逢x進一位。 十進位制是逢十進一,十六進位制是逢十六進一,二進位制就是逢二進一,以此類推,x進位制就是逢x進位。

12樓:匿名使用者

十六進位制化為十進位制:方法很簡單,就是用個位數+十位數*16+百位數*256+千位數*4096+...相乘的時候,前面的一位數乘以的數是十後面一位數乘以數的16倍。

例:將十六進位制數ab轉換成十進位制數: (ab)16=a×16+b=(171)10(abc)16=a×256+b×16+c=(2748)10

十六進位制計算方法

13樓:舊太陽的天空

0-9對應0-9;

a-f對應10-15;

十六進位制數的加減法的進/借位規則為:借一當十六,逢十六進一。

十六進位制數同二進位制數及十進位制數一樣,也可以寫成式的形式。

十進位制整數轉十六進位制數:「除以16取餘,逆序排列」(除16取餘法)

例:(1765)10=(6e5)2

1765/16=110.......5

110/16=6........14

616=0......6

因為14對應e

十六進位制數轉換成二進位制數:把每一個十六進位制數轉換成4位的二進位制數,就得到一個二進位制數。

十六進位制數字與二進位制數字的對應關係如下:

0000 -> 0 0100 -> 4 1000 -> 8 1100 -> c

0001 -> 1 0101 -> 5 1001 -> 9 1101 -> d

0010 -> 2 0110 -> 6 1010 -> a 1110 -> e

0011 -> 3 0111 -> 7 1011 -> b 1111 -> f

例:將十六進位制數5df.9 轉換成二進位制:

5 d f . 9   0101 1101 1111 .1001

即:(5df.9)16 =(10111011111.1001)2

例:將二進位制數1100001.111 轉換成十六進位制:

0110 0001 . 1110   6 1 . e

即:(1100001.111)2 =(61.e)16

擴充套件資料:

進位制轉換的理論:

1、 二進位制數、十六進位制數轉換為十進位制數:

用按權法把一個任意r 進位制數a n a n-1 ...a1a 0 . a -1 a -2...a -m轉換成十進位制數,其十進位制數值為每一位數字與其位權之積的和。

a n ×rn+ a n-1×r n-1 +…+ a 1×r 1 + a 0×r 0 + a -1 ×r -1+ a -2×r -2+ …+ a -m ×r -m

2、 十進位制轉化成r 進位制十進位制數輪換成r 進位制數要分兩個部分:

整數部分要除r 取餘數,直到商為0,得到的餘數即為二進數各位的數碼,餘數從右到左排列(反序排 列) 。小數部分要乘r 取整數,得到的整數即為二進數各位的數碼,整數從左到右排列(順序排列) 。

3、十六進位制轉化成二進位制:每一位十六進位制數對應二進位制的四位,逐位。

4、 二進位制轉化成十六進位制:將二進位制數從小數點開始分別向左(對二進位制整數)或向右(對二進位制小數)每四位組成一組,不足四位補零。

十六進位制如何轉換成二進位制,十六進位制如何轉換為二進位制

將十六進位制數轉換為二進位制數,只需將每一位的十六進位制數轉換為相應的4位二進位制數,然後組合起來即可。所以與十六進位制數bc等值的二進位制數是10111100,應該選擇b項。擴充套件資料二進位制與十六進位制之間的轉換 1 二進位制數轉換成十六進位制數 由於2的4次方 16,所以依照二進位制與八進位...

十六進位制轉換二進位制是什麼,十六進位制如何轉換為二進位制

舉例說明 把 1000 這個16進位制的數變成2進位制 16進位制轉2進位制就是直接把每位轉換成2進位制就可以了1變成2進位制 0001 所以這個數轉換成2進位制是0001 0000 0000 0000不是已經很清楚了嗎,比如16進位制的1a,就是0001 1010,就是把每一位的數字轉換成2進位制...

二進位制數1101110轉換成十六進位制數後是

從二進位制數的後面起 每四位分一組 最前面卻的用0補 題中的二進位制數九可以分為0110和1011 然後將這兩個二進位制數化成十進位制就是6和11 而十六進位制中11用b表示 所以答案就是6b 分為0110和1110不是1011 二進位制數01100101轉換成十進位制是 轉換成十六進位制數是 01...