一、计算机数据存储方式
计算机硬件有两种储存数据的方式:大端字节序(big endian)和小端字节序(little endian)。举例来说,数值0x11223344使用4个字节储存:高位字节到低位字节分别是:0x11,0x22,0x33,0x44。
二、大小端字节序
大端字节序:高位字节在前,低位字节在后,这是人类读写数值的方法。
小端字节序:低位字节在前,高位字节在后,即以0x44332211形式储存。
三、为什么要有大小端字节序
为什么要有字节序,每次读写都要区分,多麻烦!统一使用大端字节序,不是更方便吗?
答案是,计算机电路先处理低位字节,效率比较高,因为计算都是从低位开始的。所以,计算机的内部处理都是小端字节序。但是,人类还是习惯读写大端字节序。所以,除了计算机的内部处理,其他的场合几乎都是大端字节序,比如网络传输和文件储存。