将IP地址转换为十六进制

Bhu*_*bus 1 x86 hex

我想知道如何在x86机器上手动将IP地址转换为十六进制值.例如,我正在阅读的书给出了192.168.42.72的十六进制表示:

    0x482aa8c0
Run Code Online (Sandbox Code Playgroud)

但从未解释转换的工作原理.那么,它是怎么回事?

mro*_*ach 8

当您将IP转换为长整数时,您将以相反的顺序取每个八位字节并将其乘以256^n其中n是八位字节的从零开始的反向索引

所以对于这个ip你正在做

(72 * 256^0) + (42 * 256^1) + (168 * 256^2) + (192 * 256^3)
= 3232246344
= 0xc0a82a48
Run Code Online (Sandbox Code Playgroud)

看起来这本书正在倒退,但你明白了.