汇编语言push总结
push
压入立即数
在实模式环境下:
当压入8位立即数时,由于实模式下默认操作数是16位,cpu会将其扩展为16位后再将其入栈,sp-2
当压入16位立即数时,cpu会将其直接入栈sp-2
当压入32位立即数时,cpu会将其直接入栈sp-4,编译器编译完成后的机器码会加操作数反转前缀0x66
再保护模式下:
当压入8位立即数时,由于保护模式下默认操作数是32位,cpu将其扩展为32位后入栈,扩展相当于是编译器的强制类型转换。
esp-4
当压入16位立即数,cpu直接压入2字节,esp-2 , 这个编译出来的结果前面会有反转操作数大小前缀0x66
当压入22位立即数,cpu直接压入4字节,esp-4
压入寄存器和内存
如果压入的是16位数据,栈指针-2
如果压入的是32位数据,栈指针-4
压入段寄存器
实模式 sp-2
保护模式 esp-4
汇编语言push总结相关推荐
- java中push和pop指令的作用_汇编语言PUSH和POP指令(压栈和出栈)
汇编里把一段内存空间定义为一个栈,栈总是先进后出,栈的最大空间为 64K.由于 "栈" 是由高到低使用的,所以新压入的数据的位置更低,ESP 中的指针将一直指向这个新位置,所以 E ...
- 16位模式/32位模式下PUSH指令探究——《x86汇编语言:从实模式到保护模式》读书笔记16...
一.Intel 32 位处理器的工作模式 如上图所示,Intel 32 位处理器有3种工作模式. (1)实模式:工作方式相当于一个8086 (2)保护模式:提供支持多任务环境的工作方式,建立保护机制 ...
- 16位模式/32位模式下PUSH指令探究——《x86汇编语言:从实模式到保护模式》读书笔记16
一.Intel 32 位处理器的工作模式 如上图所示,Intel 32 位处理器有3种工作模式. (1)实模式:工作方式相当于一个8086 (2)保护模式:提供支持多任务环境的工作方式,建立保护机制 ...
- 汇编语言-007(ADD_SUB_NEG 、 PUSH和POP指令应用 、 AND,OR,XOR使用 、 条件跳转应用)
1: ADD_SUB_NEG : ADD伪指令增加数值,SUB伪指令减少数值,NEG取反+1 .386 .model flat,stdcall.stack 4096 ExitProcess PROTO ...
- 出栈(释放栈)和引用栈内数据意义不等同,和嵌套有关系但不是等同关系,局部变量进栈操作,不是局部变量自动带有进栈指令。汇编语言后局部变量操作是包含进栈操作指令PUSH和栈内地址存储数据调用,出栈。
出栈(释放栈)和引用栈内数据意义不等同,和嵌套有关系但不是等同关系,局部变量进栈操作,不是局部变量自动带有进栈指令.汇编语言后局部变量操作是包含进栈操作指令PUSH和栈内地址存储数据调用,出栈. 2. ...
- 汇编语言 执行push和执行pop区别 栈顶的变化范围
执行pop时,先读取SS:SP处的数据,后改变SP. 执行push时,先改变SP,后向SS:SP处传送. SP的操作单位是2.[一字是两个字节,X86之中是的!] push.pop等栈操作指令,修改的 ...
- 汇编语言 用push指令将a段中的前8个字形数据,逆序存储到b段中
题目要求 用push指令将a段中的前8个字形数据,逆序存储到b段中 执行过程 push之前 a段数据 (b段数据)栈空间↓ 不要问我为什么不全是0,我并不知道,只是找出了一些规律.详见我的前一篇博客 ...
- 汇编语言:编写code段中的代码,用push指令将a段中的前8个字型数据,逆序存储b段中
题目介绍 程序如下,编写code段中的代码,用push指令将a段中的前8个字型数据,逆序存储b段中. assume cs:code,ds:a,ss:ba segmentdw 1,2,3,4,5,6,7 ...
- 汇编语言中将数据、代码、栈放入不同的段
数据.代码.栈放入不同的段 在学习汇编语言,将数据.代码.栈放入不同的段.参考王爽老师的<汇编语言>第四版,对P133的汇编代码,进行了个人理解标注.仅供参考,存在错误之处,请大家斧正. ...
最新文章
- kcf跟踪算法实例整理
- 机房配电系统与配电电缆线径的选择及巡查
- U8 种子ID表 及相关 存储过程
- 7-3 模板题 (10 分)(思路+详解)
- 监测ASP.NET MVC 网站
- php 获取delete蚕丝_php结合Redis实现100万用户投票项目,并实时查看到投票情况的案例...
- 关于类成员函数中访问同类对象的私有成员
- java mian 方法_Java mian函数
- go语言net包rpc远程调用的使用
- 【白话模型量化系列一】矩阵乘法量化
- 自定义优先队列的元素权重
- App 常用图标尺寸规范汇总
- 私域运营电商平台和传统电商平台有什么不同?
- memcached 详解
- 99 年妹子开发吊打 x 度网盘的开源神器!
- 在计算机术语中 英文cad是指,CAD中英语词汇及命令大全
- Vue 3的provide和inject用法
- Linux性能优化:CPU篇
- windows下 编写的Qt程序连接远程MySQL数据库
- 了解 什么是 22 端口