汇编学习之《push , pop指令》

学习本章前线了解ESP, EBP 指令 汇编学习之《指针寄存器&大小端学习》-CSDN博客

栈的特点:

好比一个垂直容器,可以陆续放入物体,但是先放的物体通常会被后面放的物体压着,只有等上面后放的物品拿出来后,才能被拿出来。也就是先入的后出,后入的先出。这个就是栈的重要特点。

push 压栈指令

压入的步骤:

第一步,先提升栈顶,比如原来地址是01BBFB9C, 提升后就是01BBFB98

第二步, 压入栈的数据压入到栈中,也就是上面提升的地址的位置。比如 地址01BBFB98, 值是压入对象的值。

测试语句 push ebp

执行前数据

执行后数据:

pop 出栈指令

pop ebp

第一步: 从栈顶里面的值取出来放入ebp

第二步: 恢复栈原来的样子。 ebp - 4

测试语句,pop ebp

执行前先记录下数据 ESP 地址是 01BBFB98 恢复后 01BBFB98 + 4 = 01BBFB9C

执行语句后

上一篇: 汇编学习之《test, cmp指令》

下一篇:汇编学习之《jmp, nop指令》

相关推荐
拾忆-eleven20 分钟前
NLP学习路线图(二): 概率论与统计学(贝叶斯定理、概率分布等)
学习·自然语言处理·概率论
清晨朝暮39 分钟前
【Linux 学习计划】-- git 在Linux远端服务器上的部署与简单使用
学习
奕天者1 小时前
计算机网络学习(三)——HTTP
学习·计算机网络·http
NULL指向我2 小时前
香橙派3B学习笔记2:Vscode远程SSH登录香橙派_权限问题连接失败解决
笔记·vscode·学习
hello1114-2 小时前
Redis学习打卡-Day5-Redis 持久化
数据库·redis·学习
小程同学>o<2 小时前
嵌入式开发之STM32学习笔记day10
经验分享·笔记·stm32·单片机·嵌入式硬件·学习
叒卮2 小时前
小白学习顺序表 之 通讯录实现
c语言·数据结构·学习
江畔柳前堤3 小时前
PyQt学习系列05-图形渲染与OpenGL集成
开发语言·javascript·人工智能·python·学习·ecmascript·pyqt
奕天者3 小时前
计算机网络学习(五)——TCP
学习·tcp/ip·计算机网络
【0931】5 小时前
英语学习5.24
学习