汇编学习之《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指令》

相关推荐
杜子不疼.35 分钟前
《Python学习之第三方库:开启无限可能》
开发语言·python·学习
小张的博客之旅2 小时前
宁波市第八届网络安全大赛初赛(REVERSE-Writeup)
学习·网络安全·reverse
墨雨听阁3 小时前
8.18网络编程——基于UDP的TFTP文件传输客户端
网络·网络协议·学习·udp
小晶晶京京3 小时前
day35-负载均衡
运维·网络·网络协议·学习·负载均衡
long3165 小时前
构建者设计模式 Builder
java·后端·学习·设计模式
杜子不疼.7 小时前
《Python学习之使用标准库:从入门到实战》
开发语言·python·学习
search77 小时前
前端学习 10 :SOC设计中的验证
学习
艾莉丝努力练剑7 小时前
【C语言16天强化训练】从基础入门到进阶:Day 1
c语言·开发语言·数据结构·学习
Magnetic_h8 小时前
【iOS】锁的原理
笔记·学习·macos·ios·objective-c·cocoa·xcode
鸢栀w9 小时前
前端css学习笔记7:各种居中布局&空白问题
前端·css·笔记·学习·尚硅谷网课