计算与4字节十六进制数组相关的十进制值

时间:2014-06-24 13:24:03

标签: math hex

我正在查看带有十六进制值的字节字段。前4个字节映射到一个实数值,一个数字。现在我需要知道它代表什么小数值以及如何获取这些信息?

ByteA = '12'; that means '18' in dec;
ByteB = '01'; that means '1' in dec;
ByteC = '00'; that means '0' in dec;
ByteD = '00'; that means '0' in dec;

1 个答案:

答案 0 :(得分:1)

每个字节乘以字段中的位置256 ^,因此它可以是:

Big-endian(最重要的字节优先)

18 * 256 ^ 3 = 301,989,888
 1 * 256 ^ 2 =      65,536
 0 * 256 ^ 1 =           0
 0 * 256 ^ 0 =           0
               -----------
               302,055,424

小端:

 0 * 256 ^ 3 =           0
 0 * 256 ^ 2 =           0
 1 * 256 ^ 1 =         256
18 * 256 ^ 0 =          18
               -----------
                       274

大多数编程语言都内置十六进制到十进制功能。