union:用来判断PC的大小端。
X86和arm,dsp是小端模式,有些arm处理器可以通过硬件来选择大小端模式。
keil和c51是大端模式。
大端模式:数据的高位在地址的地位,数据的地位在地址的高位。
小端模式:与大端刚好相反。
为什么有大小端模式?
因为计算机中都是以字节方式来存储的,一个字节有8bit。c语言除了有8bit的char之外,还有short、int等。另外
对于位数大于8的处理器,例如16bit和32bit的处理器,寄存器的宽度大于一个字节,那么必然存在一个如何将多字节的安排的问题。因此导致大小端模式。
通过union来判断cpu的大小端是一个很不错的选择。
注:联合体所有成员都是从低地址开始存放的。