十六進位制數3D8用十進位制數表示得多少

2021-08-21 20:02:25 字數 5950 閱讀 4831

1樓:天_痕

3*256+13*16+8*1=984。其中256是16的平方,16是16的1次方,1是16的0次方。d在十進位制裡是13。

演算法:將第n位乘以每一位的權重(就是16的n次方)然後加起來就是十進位制的結果,規定最右邊是第0位。

2樓:匿名使用者

解:說明:(1)十六進位制中,a=10,b=11,c=12,d=13,e=14,f=15.

(2)從右邊起最右一位起,記數單位分別為1,16,16²,...

(3)十六進位制化十進位制的方法對其它進位制(如二進位制)轉化為十進位制也適用。

十進位制數55536用十六進位制表示得多少

3樓:育知同創教育

0xd8f0

十六進位制數的表示方法?

4樓:再見十二班

5樓:扯淡丶懂不懂

十六進位制是計算機系統中除二進位制數之外使用較多的進位制,其遵循的兩個規則為:

其有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f等共十六個數碼,其分別對應於十進位制數的0~15;

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

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

在數制使用時,常將各種數制用簡碼來表示:如十進位制數用d表示或省略;二進位制用b來表示;十六進位制數用h來表示。

如:十制數123表示為:123d或者123;二進位制數1011表示為:1011b;十六進位制數3a4表示為:3a4h。

十進位制數100,用十六進位制表示為多少

6樓:匿名使用者

將原始資料進行整數化:

(100.6875)10*(2^4)10

=(100.6875)10*(16)10

=(1611)10

=(64b)16

=(0110 0100 1011)2

=(011001001011)2

因為最初乘了16,即2的4次方,所以換算成二進位制時應右移4位,去掉前導零,

即(1100100.1011)2

-------

採用除基取餘法,基數為16,

1611/16,商100,餘11,即十六進位制數b100/16,商6,餘4

6/16,商0,餘6

從上到下依次是個位、十位、百位

所以,最終結果為(64b)16.

16進位制最大能表示10進位制數是多少?

7樓:

1個位元組:最大0xff = 255(儲存型別byte和char) 2個位元組:最大0xff ff = 65535(儲存型別shot int) 4個位元組:

最大0xff ff ff ff= 4294967295(儲存型別int 、long) 8個位元組:最大0xff ff ff ff ff ff ff ff= 18446744073709551615(儲存型別long long)

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

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

中文名:十六進位制

外文名:hexadecimal

定義:計算機中資料的一種表示方法

組成:0-9,a-f

十六進位制的表示方法:十六進位制照樣採用位置計數法,位權是16為底的冪。對於n位整數,m位小數的十六進位制數用加權係數的形式表示如下:

舉例說明:

16進位制的20表示成10進位制就是:2×161+0×16º=32

10進位制的32表示成16進位制就是:20

十進位制數可以轉換成十六進位制數的方法是:十進位制數的整數部分「除以16取餘」,十進位制數的小數部分「乘16取整」,進行轉換。

比如說十進位制的0.1轉換成八進位制為0.0631463146314631。

就是0.1乘以8=0.8,不足1不取整,0.

8乘以8=6.4,取整數6, 0.4乘以8=3.

2,取整數3,依次下算。

程式設計中,我們常用的還是10進位制.畢竟c/c++是高階語言。比如:

int a = 100,b = 99;

不過,由於資料在計算機中的表示,最終以二進位制的形式存在,所以有時候使用二進位制,可以更直觀地解決問題。但二進位制數太長了。比如int 型別佔用4個位元組,32位。

比如100,用int型別的二進位制數表達將是:

轉換二進位制轉換十進位制

二進位制數第0位的權值是2的0次方,第1位的權值是2的1次方……

所以,設有一個二進位制數:101100100,轉換為10進製為:356

用橫式計算

0×20+0×21+1×22+0×23+0×24+1×25+1×26+0×27+1×28=356

0乘以多少都是0,所以我們也可以直接跳過值為0的位:

1×22+1×25+1×26+1×28=356

4+32+64+256 =356

八進位制轉換十進位制

八進位制就是逢8進1。

八進位制數採用 0~7這八數來表達一個數。

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

所以,設有一個八進位制數:1507,轉換為十進位制為:839,具體方法如下:

可以用橫式直接計算:

7×80+0×81+5×82+1×83=839

也可以用豎式表示

第0位 7×80=7

第1位 0×81=0

第2位 5×82=320

第3位 1×83=512

十六進位制轉換十進位制

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開始)位上,如果是數β (β大於等於0,並且β小於等於 15,即:f)表示的大小為 β×16的n次方。

假設有一個十六進數 2af5

直接計算就是:

5×160+f×161+a×162+2×163=10997[1]

也可以用豎式表示:

第0位: 5×160=5

第1位: f×16^1=240

第2位: a×162=2560

第3位: 2×163=8192

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

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

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

十六進位制互相轉換

首先我們來看一個二進位制數:1111,它是多少呢?

你可能還要這樣計算:1×20+1×21+1×22+1×23=1×1+1×2+1×4+1×8=15。

然而,由於1111才4位,所以我們必須直接記住它每一位的權值,並且是從高位往低位記,:8、4、2、1。即,最高位的權值為23=8,然後依次是 22=4,21=2,20=1。

記住8421,對於任意一個4位的二進位制數,我們都可以很快算出它對應的10進位制值。

下面列出四位二進位制數 ***x 所有可能的值(中間略過部分)

僅4位的2進位制數 快速計算方法 十進位制值 十六進位制

1111 = 8 + 4 + 2 + 1 = 15 =f

1110 = 8 + 4 + 2 + 0 = 14= e

1101 = 8 + 4 + 0 + 1 = 13= d

1100 = 8 + 4 + 0 + 0 = 12 =c

1011 = 8 + 0 + 2 + 1 = 11= b

1010 = 8 + 0 + 2 + 0 = 10 =a

1001 = 8 + 0 + 0 + 1 =9 =9

0001 = 0 + 0 + 0 + 1 = 1= 1

0000 = 0 + 0 + 0 + 0 = 0= 0

二進位制數要轉換為十六進位制,就是以4位一段,分別轉換為十六進位制。

如(上行為二制數,下面為對應的十六進位制):

1111 1101 , 1010 0101 , 1001 1011

f d , a 5 , 9 b

反過來,當我們看到 fd時,如何迅速將它轉換為二進位制數呢?

先轉換f:

看到f,我們需知道它是15(可能你還不熟悉a~f這五個數),然後15如何用8421湊呢?應該是8 + 4 + 2 + 1,所以四位全為1 :1111。

接著轉換d

看到d,知道它是13,13如何用8421湊呢?應該是:8 + 4 + 1,即:1101。

所以,fd轉換為二進位制數,為:1111 1101

由於十六進位制轉換成二進位制相當直接,所以,我們需要將一個十進位制數轉換成2進位制數時,也可以先轉換成16進位制,然後再轉換成2進位制。

比如,十進位制數 1234轉換成二制數,如果要一直除以2,直接得到2進位制數,需要計算較多次數。所以我們可以先除以16,得到16進位制數:

被除數 計算過程 商 餘數

1234 1234/16 77 2

77 77/16 4 13 (d)

4 4/16 0 4

結果16進製為:4d2

然後我們可直接寫出4d2的二進位制形式:

其中對映關係為:

0100 -- 4

1101 -- d

0010 -- 2

同樣,如果一個二進位制數很長,我們需要將它轉換成10進位制數時,除了前面學過的方法是,我們還可以先將這個二進位制轉換成16進位制,然後再轉換為10進位制。

下面舉例一個int型別的二進位制數:

我們按四位一組轉換為16進位制:6d e5 af 1b

十進位制轉十六進位制

採餘數定理分解,例如將487710轉成十六進位制:

487710÷16=30481....14(e)

30481÷16=1905....1

1905÷16=119....1

119÷16=7....7

7÷16=0....7

這樣就計到487710(10)=7711e(16)

表達方法

程式的表達方法環境 格式備註url%hex無 xml,xhtml&#xhex無html,css#hex6位,表示顏色unicodeu+hex6位,表示字元編碼mime=hex無modula-2#hex無smalltalk,algol 6816rhex無common lisp#xhex或#16rhex無ipv68個hex用:分隔無

c c++的表達方法

如果不使用特殊的書寫形式,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++並不把它當成一個負數。

在轉義符中的使用

轉義符也可以接一個16進位制數來表示一個字元。如 \'?\' 字元,可以有以下表達方式:

\'?\' //直接輸入字元

\'\77\' //用八進位制,此時可以省略開頭的0

\'\0x3f\' //用十六進位制

同樣,這一小節只用於瞭解。除了空字元用八進位制數 \'\0\' 表示以外,我們很少用後兩種方法表示一個字元。

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

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...

十六進位制數bbbh轉化為十進位制數是多少呢過程

3003 十六進位制 英文名稱 hexadecimal 是計算機中資料的一種表示方法。十六進位制照樣採用位置計數法,位權是16為底的冪。為了區別不同數製表示的數,通常用右括另外下標數字或字母表示數制,十進位制數用d表示,二進位制用b表示,十六進位制數用h表示,八進位制用o表示。十六進位制轉換成十進位...

請問怎麼把十進位制數轉換為十六進位制數

修改中經常接觸的是2 10和16進位制,基本上需要了解的是2和16互轉 10和16互轉,其他多瞭解也沒虧 2轉16 4個2進位制位為一個16進位制數,2進位制1111為16進位制f,2進位制中千位的1 8,百位的1 4,十位的1 2,個位的1 1,將各個位的數作相應轉換再相加,的到的數就是10進位制...