16進位制 怎麼表示??可以轉換成十進位制嗎?怎麼轉換

2021-12-25 05:04:21 字數 5492 閱讀 1079

1樓:職場導師趙叔

16進位制的簡寫表示形式為hex或下標16,如:39(16)。十六進位制是可以轉換為十進位制的。

具體的轉換方式是:把十六進位制數按位權形式,多項式和的形式,求其最後的和,就是其對應的十進位制數。簡稱「按權求和」。

具體的轉化方法如下圖:

2樓:冰葉品風

16進位制就是逢16進1,但我們只有0~9這十個數字,所以我們用a,b,c,d,e,f這五個字母來分別表示10,11,12,13,14,15。字母不區分大小寫。

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

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

假設有一個十六進數 2af5, 那麼如何換算成10進位制呢?

用豎式計算:

2af5換算成10進位制:

第0位: 5 * 160 = 5

第1位: f * 161 = 240

第2位: a * 162 = 2560

第3位: 2 * 163 = 8192 +

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

10997

直接計算就是:

5 * 160 + f * 161 + a * 162 + 2 * 163 = 10997

(別忘了,在上面的計算中,a表示10,而f表示15)

現在可以看出,所有進位制換算成10進位制,關鍵在於各自的權值不同。

假設有人問你,十進數 1234 為什麼是 一千二百三十四?你儘可以給他這麼一個算式:

1234 = 1 * 103 + 2 * 102 + 3 * 101 + 4 * 100

6.2.6 十六進位制數的表達方法

如果不使用特殊的書寫形式,16進位制數也會和10進位制相混。隨便一個數:9876,就看不出它是16進位制或10進位制。

c,c++規定,16進位制數必須以 0x開頭。比如 0x1表示一個16進位制數。而1則表示一個十進位制。

另外如:0xff,0xff,0x102a,等等。其中的x也也不區分大小寫。

(注意:0x中的0是數字0,而不是字母o)

以下是一些用法示例:

int a = 0x100f;

int b = 0x70 + a;

至此,我們學完了所有進位制:10進位制,8進位制,16進位制數的表達方式。最後一點很重要,c/c++中,10進位制數有正負之分,比如12表示正12,而-12表示負12,;但8進位制和16進位制只能用達無符號的正整數,如果你在**中裡:

-078,或者寫:-0xf2,c,c++並不把它當成一個負數。

3樓:匿名使用者

1、16進位制在計算機中用0x開頭表示,例如0xfff表示十六進位制fff。

2、十六進位制可以轉化為十進位制。

3、十六進位制轉換為十進位制方法,按權相加即可,例如十六進位制3a5.4對應的十進位制為:

3*16^2 + 10*16^1 + 5*16^0 + 4*16^-1

4樓:

當然可以16進位制用0-9 a-f這十六個符號來計算1代表二進位制0001到f代表1111,二進位制轉換成十進位制可以用短除法

5樓:匿名使用者

可以,0—9,a,b,c,d,e,f,

小數的十進位制轉換成十六進位制(如圖),怎麼轉換?

6樓:愛軍

十六進位制的整數, 表示每十六才進一位. 十進位制是, 每十, 進一位,所以, 整數部分, 可以用,(/16), 從個位十位往上求, 將數字逐次除以16,餘數為, 每一位結果。

小數部分, 因為是未滿16, 所以應該用乘法(x16), 從小數點下第一, 第二位, 將小數逐次乘以16.

整數為, 每一位的結果.

小數的十進位制轉換成十六進位制的方法:

十進位制小數轉r進位制小數,方法為乘r取整,每次乘以相應之後基數後取結果的整數部分即可。需要注意的是並非所有的十進位制小數都能完全轉化為r進位制小數,這時就需要取近似值。比如這裡的0.

9032d轉化成16進位制小數

0.9032*16=14.4512 取整數14 即e

0.4512*16=7.2192 取整數7

0.2192*16=3.5072 取整數3

0.5072*16=8.1152 取整數8

0.1152*16=1.8432 取整數1

。。。。。。

所以這個叔轉換成16進位制就是0.e7381h,至於你說的 8後面應該是有很多位的在這裡 怎麼只有3 位數? 前面說了,並非所有的十進位制小數都能完全轉化為r進位制小數,這時就需要取近似值,我們只是把後面的省略了,你想算還可以繼續往下面算。

將十六進位制數25cd轉換成為十進位制數是多少?要詳細過程,謝謝!

7樓:愛笑的柯南推理

對於進位制之間bai的轉換,一般直接的計du算zhi就是利用數制乘以他所在的權dao值,然後相

版加即可。十權六進位制的權值大概是這樣的:(從左至右的權值,計算時我們從低位開始計算。)

16^8 | 16^7 | 16^6 | 16^5 | 16^4 | 16^3 | 16^2 | 16^1 | 16^0

在計算3af的時候,我們這樣算:首先我們知道,英文字母在十六進位制中代表的十進位制數:a(10),b(11),c(12),d(13,)e(14),f(15).

那麼,這個資料轉為十進位制這樣計算:

f*16^0+a*16^1+3*16^2=15*1+10*16+3*256=943.

8樓:匿名使用者

^用位加權乘

來,積相加法比較簡自單。如8ffc035b轉換為十進位制(最低位是16^0,依次向左):

1、25cd = 2 x 16^3 + 5 x 16^2 + c x 16^1 + d x 16^0

2、=2 x 16^3 + 5 x 16^2 + 12 x 16^1 + 13 x 16^0

3、=8192 + 1280 + 192 + 134、=9677

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

9樓: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進位制與其他不同進位制之間的換算轉換。

10樓:匿名使用者

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

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

具體案例如下:

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

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

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

11樓:匿名使用者

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

12樓:玩玩貓兒

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

13樓:

^十六進位制

轉十進位制:

從個位起第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;}

14樓:匿名使用者

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

怎麼樣可以把16進位制數轉換成ASCII

ascii碼本身也是由8位的數字,指示表現的形式不同而已。比如說字元 i j k l m其實就是十進位制的 105 106 107 108 109 也是十六進位制的0x69 0x6a 0x6b 0x6c 0x6d,它們在計算機內部的儲存方式都是二進位制儲存的。我想,你所位的轉換,是隻在螢幕上顯示的轉...

js怎樣把10進位制數轉換成16進位制數顯示

js把復10進位制轉為16進位制並制 顯示 定義一個轉換函式 var w function s 轉換方法 w parseint x,16 比如傳入15,列印出來 的結果是 0xf。使用tostring 函式,傳入一個引數16 十進位制的數如何轉換成r進位制的,r進位制的數如何轉換成十進位制的?1 將...

excel度分秒轉換成十進位制,怎麼將excel表格中的經緯度度分秒轉換成十進位制

1 首先開啟excel輸入下圖資料,其中度分秒符號可以通過面板上插入 符號 單位符號,分別插入度分秒符號。2 點選進入下圖的那個單元格,編輯狀態,選中單元格內文字然後複製,注意不是複製這個單元格。3 選中十進位制度選擇列,然後右鍵 設定單元格格式 數字 自定義 在型別處貼上,如圖。4 下面修改貼上的...