栈的基本介绍

1、栈的定义

:是一种运算受限的线性表,只允许其在一端进行插入和删除操作。

栈顶:指栈允许进行插入和删除的一端。

栈底:不允许进行插入和删除的一端。

空栈:栈中元素为零。

栈具有先进后出,后进先出的特点,简称为LIFO结构(Last in first out)

(图片来自维基百科)

注意:程序的栈是从进程地址空间的高地址向低地址增长的

2、寄存器

32 位和 64 位程序的简单区别

  • x86
    • 函数参数函数返回地址的上方
  • x64
    • System V AMD64 ABI (Linux、FreeBSD、macOS 等采用) 中前六个整型或指针参数依次保存在 RDI, RSI, RDX, RCX, R8 和 R9 寄存器中,如果还有更多的参数的话才会保存在栈上。
    • 内存地址不能大于 0x00007FFFFFFFFFFF,6 个字节长度,否则会抛出异常。
posted @   zzwwwe  阅读(181)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?

阅读目录(Content)

此页目录为空

点击右上角即可分享
微信分享提示