1:为什么会出现大小端
在计算机系统中,数据是以字节为单位进行存储的。每个地址单元都对应着一个字节,一个字节为8位(bit)。然而,在C语言等编程语言中,除了8位的char类型外,还有16位的short型、32位的int型等数据类型。对于位数大于8位的处理器(如16位或32位处理器),由于寄存器宽度大于一个字节,因此需要将多个字节组合起来以存储一个完整的数据项。这就涉及到了如何将多个字节安排(即字节顺序)的问题,从而导致了大小端模式的出现。
大小端的问题,实质:是字节存储顺序的问题
2:什么是大小端
大端模式(Big Endian):在这种模式下,数据的高位字节(最高有效位)存储在内存的低地址端,而低位字节(最低有效位)则存储在内存的高地址端。
小端模式(Little Endian):与大端模式相反,小端模式将数据的低位字节存储在内存的低地址端,而高位字节则存储在内存