1

我试图了解 300*1024*1024 值将如何存储在大端机器上的 64 位变量中,我们将如何评估高字节和低字节?

4

2 回答 2

2

用长整数和一个由 8 个无符号字符组成的数组构建一个联合,然后自己看看。如果需要,您可以查看十六进制的无符号字符。

于 2013-08-05T14:45:46.717 回答
0

Big-endian 硬件首先将最高有效字节存储在内存中。Little-endian 硬件首先存储最低有效字节。在十六进制中,300*1024*1024 是 0x12C00000。

因此,对于您的大端硬件,它将像这样存储:

byte number  1  2  3  4  5  6  7  8
value        00 00 00 00 12 C0 00 00

在 LE 硬件上,字节将以相反的顺序存储:

byte number  1  2  3  4  5  6  7  8
value        00 00 C0 12 00 00 00 00
于 2013-08-05T15:16:58.297 回答