x86汇编_堆栈操作基础_笔记_17

本文详细介绍了计算机科学中的堆栈数据结构,遵循后进先出(LIFO)原则。运行时堆栈作为内存数组存在,由ESP寄存器管理。文章还解释了不同数据类型在堆栈中的操作方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

堆栈数据结构-stack data structure

堆栈的原则是:后进先出(Last-In-First-Out)。运行时的堆栈是一个内存数组,由ESP寄存器负责管理,32位下堆栈的每个字节的地址长度是4个字节。ESP寄存器基本上不会由程序员控制,要用call / ret / push / pop间接修改。

ESP总是指向添加或压入到栈顶的最后一个值的内存地址。程序一开始ESP显示的是栈底的内存地址,随着放入栈的内容增加,内存地址编号是越来越小的。

push的操作数可以是内存地址、寄存器、立即数。

push 8位内存数据/寄存器---不允许

push 16位内存数据/寄存器(栈顶减2)

push 32位内存数据/寄存器(栈顶减4)

push 立即数(立即数视为32位,栈顶减4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值