小端序在栈中的表示

2023-10-23 09:03:25 浏览数 (1)

栈的方向

在X86中栈的扩展是从高地址到低地址的。

代码语言:javascript复制
高地址->    4003
            4002
            4001
低地址->    4000

阅读方向

人类按从左到右,会先读出一个数的高位再读出低位。而计算时先计算低位更方便。故而计算机使用小端序与人类的阅读顺序相反。

小端序

小端的低地址存低位。

比如0x12345678,高位是12,低位是78。在栈中的表示是

代码语言:javascript复制
高地址->    4003 12
            4002 34
            4001 56
低地址->    4000 78

从上往下读是符合人的阅读习惯的。

这对高级语言编程没有什么影响,但如果从汇编的层次来看代码,则可能发现汇编中的一些数是“反”过来的。

0 人点赞