为什么字节顺序与单字节无关?
Why is endianess not relevant for single bytes?
如果我翻转值 0xA1A2A3A4
的字节顺序,我将得到 0xA4A3A2A1
。
但我不明白为什么规则似乎停止在每字节级别。也就是说,如果我只有一个字节 0xA1
,我就无法翻转它。大机小机都一样
然而,如果我们以二进制形式查看 0xA1
,它是 10100001
,我们可以将其转换为 01011110
,但那是 0x5E
。所以,我不明白。字节顺序与二进制无关吗?它是在注册表级别(或者我们想称之为二进制、每字节级别之上的任何级别)吗?如果我们有一个 32 位 CPU 它实际上仍然是 8 位寄存器只是分组为 4 个吗?如果我们对 8 位的单个字节进行操作,为什么字节顺序无关紧要?
可能是因为字节序与内存地址有关,与内容本身无关。
Endianess 是字节在计算机内存中的顺序。
如果我翻转值 0xA1A2A3A4
的字节顺序,我将得到 0xA4A3A2A1
。
但我不明白为什么规则似乎停止在每字节级别。也就是说,如果我只有一个字节 0xA1
,我就无法翻转它。大机小机都一样
然而,如果我们以二进制形式查看 0xA1
,它是 10100001
,我们可以将其转换为 01011110
,但那是 0x5E
。所以,我不明白。字节顺序与二进制无关吗?它是在注册表级别(或者我们想称之为二进制、每字节级别之上的任何级别)吗?如果我们有一个 32 位 CPU 它实际上仍然是 8 位寄存器只是分组为 4 个吗?如果我们对 8 位的单个字节进行操作,为什么字节顺序无关紧要?
可能是因为字节序与内存地址有关,与内容本身无关。
Endianess 是字节在计算机内存中的顺序。