1、为什么会有大小端字节序
字节序即字节的存储顺序。在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一 个字节,一个字节为8bit。字节序与使用的处理器有关,对于位数大于8位的处理器,32位或64位的处理器,由于寄存器宽度大于一个字节,那么必然存在着一个如何将多个字节安排的问题,因此就产生了两种不同的存储模式:大端存储模式和小端存储模式。
2、什么是大小端存储模式
大端(存储)模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中。
小端(存储)模式,是指数据的低位保存在内存的低地址中,而数据的高位,,保存在内存的高地址中。
例如 0x12345678 在两种不同的存储方式如下:
3、为什么要存在两种存储方式
为什么要存在两种不同的存储方式?使用同一种存储方式,不是更简单吗?
对于人类来说大端字节序是人类自然处理数字的方式,更加适用于人类,除了计算机的内部处理,其他的场合几乎都是大端字节序,比如网络传输和文件储存。
而对于逻辑电路来说,小端存储可以更有效。内存的读写永远从低到高开始读/写。计算机如果先处理低位字节,效率比较高。