【发布时间】:2020-07-07 09:25:40
【问题描述】:
假设例如SS=0000h,栈的大小是256字节。
堆栈指针寄存器 (SP) 最初指向的位置在哪里?
我猜是0100h。
堆栈的底部在哪里?
0100h 还是 00FFh?
【问题讨论】:
-
堆栈的“顶部”位置通常不为0,因此如果堆栈大小为256字节,则堆栈不是地址范围0...0xFF而是例如0x8000...0x80FF .这不仅适用于 x86 CPU,而且适用于任何其他允许将堆栈放置在内存中的任何位置的 CPU 类型。
标签: assembly x86-16 cpu-registers callstack