*字节序是何物。。。?*
小人国的内战源于吃水煮鸡蛋时究竟是从大头敲开还是从小头敲开,因此曾发生过6次叛乱,其中一个皇帝送了命,另一个丢了王位。
不同的计算机体系结构中,可能采用不同的存储和传输机制,通常采用的字节存储机制主要有两种:大端(Big-endian)和小端(Little-endian)。
最重要的位或最重要的字节(MSB,Most Significant Bit/Byte),表明在一个bit序列或一个byte序列中对整个序列取值影响最大的那个bit/byte。
最不重要的位或最不重要的字节(LSB,Least Significant Bit/Byte),表明在一个bit序列或一个byte序列中对整个序列取值影响最小的那个bit/byte。
Big-endian规定MSB在存储时放在低地址,在传输时MSB放在流的开始。LSB存储时放在高地址,在传输时放在流的末尾。目前的PowerPC系列处理器、TCP/IP网络及Java虚拟机的字节序为Big-endian。
Little-endian规定与之相反。目前的Intel的x86系列及衍生CPU的字节序为Little-endian。
//判断机器采用何种存储机制
#include <iostream>
using namespace std;
int main()
{
int i = 0x12345678;
if (0x78 == (char)i)cout << "Little-endian" << endl;
else cout << "Big-endian" << endl;
return 0;
}
*鉴定完毕。。。牙膏厂果然是Little-endian。。。*