如何將十六進位制轉換為十進位制?


十六進位制數是一種數值系統,其基數為 16,它只有 16 個符號:0、1、2、3、4、5、6、7、8、9 和 A、B、C、D、E、F。其中 A、B、C、D、E 和 F 分別是十進位制值 10、11、12、13、14 和 15 的一位表示。而十進位制系統是公眾最熟悉的數值系統。它是基數為 10 的系統,只有 10 個符號:0、1、2、3、4、5、6、7、8 和 9。

從十六進位制到十進位制的轉換

有多種間接或直接的方法可以將十六進位制數轉換為十進位制數。在間接方法中,您需要將十六進位制數轉換為二進位制或八進位制數,然後將其轉換為十進位制數。

示例 - 將十六進位制數 F1 轉換為十進位制數。

First convert it into binary or octal number,
= (F1)16
= (1111 0001)2 or (011 110 001)2
Because in binary, value of F and 1 are 1111 and 0001 respectively. Then convert it into decimal number multiplying power of its position of base.
= (1x27+1x26+1x25+1x24+0x23+0x22+0x21+1x20)10
or (3 6 1)8

= (1x27+1x26+1x25+1x24+0x23+0x22+0x21+1x20)10 or (3x82+6x81+1x80)10 = (241)10

但是,有一種簡單直接的方法可以將十六進位制數轉換為十進位制數。由於十六進位制數系統中只有 16 位數字(從 0 到 7 和 A 到 F),因此我們可以使用以下 4 位表示十六進位制數系統中的任何一位數字。

十六進位制01234567


二進位制00000001001000110100010101100111


十六進位制89A=10B=11C=12D=13E=14F=15
二進位制10001001101010111100110111101111

十六進位制數系統提供了一種方便的方法,可以將大型二進位制數轉換為更緊湊且更小的組。這些是十六進位制在十六進位制相應位置的權重(基數的值為 16)。

最高有效位 (MSB)十六進位制點最低有效位 (LSB)
16216116016-116-216-3
2561611/161/2561/4096

由於數字是位置數系統的一種型別。這意味著從右到左的位置的權重分別為 160、161、162、163 等。對於整數部分,以及從左到右的位置的權重分別為 16-1、16-2、16-3 等。對於小數部分。

您可以使用十進位制到十六進位制數的反向方法直接將十六進位制數轉換為十進位制數。

假設任何無符號十六進位制數為 hnh(n-1) ... h1h0.h-1h-2 ... h(m-1)hm。然後十進位制數等於十六進位制數字 (hn) 乘以它們 16 的冪 (16n) 的總和,即

= hnh(n-1) ... h1h0.h-1h-2 ... h(m-1)hm

= hnx16n+h(n-1)x16(n-1)+ ... +h1x161+h0x160+h-1x16-1+h-2x16-2+ ... +h(m-1)x16-(m-1)+h-mx16-m

這是一個簡單的演算法,您需要將二進位制的位置值乘以其數字,並得到這些步驟的總和。

示例 1 - 將十六進位制數 ABCDEF 轉換為十進位制數。

由於符號 A、B、C、D、E、F 的值分別為 10、11、12、13、14、15。因此,等效的十進位制數為:

= (ABCDEF)16
= (10x165+11x164+12x163+13x162+14x161+15x160)10

= (10485760+720896+49152+3328+224+15)10 = (11259375)10 which is answer.

示例 2 - 將十六進位制數 1F.01B 轉換為十進位制數。

由於符號 B 和 F 的值分別為 11 和 15。因此,等效的十進位制數為:

= (1F.01B)16
= (1x161+15x160 +0x16-1+1x16-2+11x16-3)10
= (31.0065918)10 which is answer.

更新於: 2020-06-26

17K+ 瀏覽量

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.