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



我正在查看具有十六进制值的字节字段。前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;

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

大端序(最重要字节优先)

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

大多数编程语言都有内置的十六进制转换功能。

最新更新