对于大端、小端的区别,可能看资料的时候确实理解了,但过段时间就搞混了;高位低地址、低位高地址、高位高地址、低位低地址...是不是看起来就好头大,哪个对应哪个啊。其实可以把大小端与堆栈联系起来记忆,虽然两者讲的不是一个粒度的,但大小端模式里高低位的存放与堆和栈的生长方向有一个共同点,它们都存在一个数据存放顺序的问题。
下面结合几张图说明一下。
作者: 蝉蝉
请尊重作者劳动成果,转载请在标题注明“转载”字样,并标明原文链接:
http://www.cnblogs.com/chanchan/p/7820508.html
假设机器为32位的,为方便表示,下文的数据都以16进制来表示。有一个数为0x12345678,在大端、小端模式下分别以下面两张图的形式存储:
可以看出,大端是高位存储在低地址,低位存储在高地址,而小端正相反,高位存储在高地址,低位存储在低地址。仔细观察一下,其实大端更符合人类的书写方式;