首页 > 其他分享 >2.2 算术和逻辑操作

2.2 算术和逻辑操作

时间:2023-05-10 17:23:01浏览次数:32  
标签:逻辑 算术 操作数 leal eax 指令 寄存器 2.2 edx

加载有效地址

leal 指令也称为加载有效地址(load effective address)指令,它实际上是 movl 指令的变形。它的指令形式是从存储器读数据到寄存器,但实际上它根本没有引用存储器。它的第一个操作数看上去是一个存储器引用,但该指令并不是从指定的位置读取数据,而是将有效地址写入到目的操作数,类似于 C 语言的取地址操作符“&”。另外就是作普通的算术运算。这类指令就是将立即数装载至寄存器,比如 leal $0x01,%eax 这种情况下 和 movl $0x01,%eax 的效果是等价的。leal指令的作用是将地址加载到寄存器,对于leal S,D而言,就是实现了 &S –> D 的功能。

通用的操作我们就不讲了,这里讲一下取地址操作,比如对于leal 4(%edx,%edx,4),%eax这条指令来讲,我们假设%edx寄存器的值为x的话,那么这条指令的作用就是将 4 + x + 4x = 5x + 4赋给%eax寄存器。它和mov指令的区别就在于,假设是movl 4(%edx,%edx,4),%eax这个指令,它的作用是将内存地址为5x+4的内存区域的值赋给%eax寄存器,而leal指令只是将5x+4这个地址赋给目的操作数%eax而已,它并不对存储器进行引用的值的计算。

移位操作

第一个操作数是移位量,SAL 和 SHL 都是左移指令,效果是一样的,移动几位,右边补上几位0;右移指令不同,算术右移 SAR 是补上符号位,即右边的第一位;逻辑右移 SHR 是补上 0 。移位的目的操作数可以是一个寄存器或是一个存储器位置。

标签:逻辑,算术,操作数,leal,eax,指令,寄存器,2.2,edx
From: https://www.cnblogs.com/LCAB/p/17388547.html

相关文章

  • [SWPUCTF 2021 新生赛]非常简单的逻辑题
    查壳:进入:不是很难的逻辑,浅浅来个爆破过了:(这里提醒一下,如果实在逆推不出来,可以考虑爆破,爆破应该是RE里人手一个的必备)result1='v0b9n1nkajz@j0c4jjo3oi1h1i937b395i5y5e0e$i'flag1=''num=0foriinrange(0,len(result1),2):forainrange(32,127):......
  • [SWPUCTF 2021 新生赛]简简单单的逻辑
    得到一个.py文件,一般是没壳的,不过还是要养成习惯,查个壳:意料之中,啥也没有,打开文件:给了我们一个加密逻辑,然后最后一行给了一个结果:那么就是根据上述的逻辑,反解密出flag就好了分析一下上述逻辑:首先对list进行变化得到key的值(怎么变化不用理,因为用不到,为啥因为是异或昂,异或的特......
  • 第3关 动手实现逻辑回归 - 癌细胞精准识别
    #-*-coding:utf-8-*-importnumpyasnpimportwarningswarnings.filterwarnings("ignore")defsigmoid(x):'''sigmoid函数:paramx:转换前的输入:return:转换后的概率'''return1/(1+np.exp(-x))def......
  • LVM 逻辑卷管理
    目录一、LVM的概念1.LVM的优点2.LVM的组成二、LVM的管理命令1.功能管理命令2.命令格式三、实操1.创建硬盘物理分区2.创建物理卷3.创建逻辑卷组4.创建逻辑卷5.格式化逻辑卷6.挂载逻辑卷(1)临时挂载(2)永久挂载7.逻辑卷扩容8.解除逻辑卷挂载9.磁盘配额一、LVM的概念LV......
  • lazarus 2.2.6+FPC 3.2.2绿色整合版 for linux aarch64
    lazarus2.2.6+FPC3.2.2绿色整合版forlinuxaarch64https://www.cnblogs.com/qiufeng2014/p/17213806.html已集成常见控件及修正了我开发遇到的Bug,这个版本包含x86_64win64交叉编译环境,有兴趣的可以下载玩玩。这个整合版的特点:一、修复代码编辑不能输入中文的Bug二、修......
  • 机器学习算法原理——逻辑斯谛回归
    文章目录逻辑斯谛回归二项逻辑斯谛回归模型极大似然估计多项逻辑斯谛回归模型总结归纳逻辑斯谛回归写在前面:逻辑斯谛回归最初是数学家Verhulst用来研究人口增长是所发现的,是一个非常有趣的发现过程,b站有更详细的背景及过程推导,在此不再赘述:https://www.bilibili.com/video/BV1N......
  • jmeter逻辑控制器使用
    一、jemeter控制器的种类1.简单控制器(SimpleController)作用:分组,用来组合取样器和其他逻辑控制器 2.循环控制器(LoopController)作用:控制该控制器下请求的循环次数例如下图中线程数为2,循环控制器次数为3,执行后HomePage执行了2次,NewsPage执行了6次(线程2*循环3次)如果勾选了f......
  • Note - 速通 NPC?有限域算术!
    浅谈有限域在OI中的一些应用(2023国家集训队论文),戚朗瑞.   \(\textbf{Example1.}\)  给定一张有向图\(G=(V,E)\),\(|V|=n\),\(|E|=m\).要求找到一条最长的简单路径.保证最长路径长度\(k\lln\).  \(\textbf{Solution1.}\)  存在显然的\(\mathcal......
  • 界面控件DevExpress Blazor UI v22.2亮点:全新的Window组件
    DevExpress拥有.NET开发需要的所有平台控件,包含600多个UI控件、报表平台、DevExpressDashboardeXpressApp框架、适用于VisualStudio的CodeRush等一系列辅助工具,该组件拥有众多新产品和数十个具有高影响力的功能,可为桌面、Web和移动应用提供直观的解决方案,全面解决各种使用场......
  • (七) 关系运算符,逻辑运算符,赋值运算符,三元运算符
    目录关系运算符一览逻辑运算符一览逻辑运算规则逻辑与和短路与区别逻辑或和短路或的区别关系运算符一览关系运算符的结果都是boolean类型,要么为true,要么为false关系运算符组成的表达式称为关系表达式,如a>=b逻辑运算符一览用于连接多个条件(多个关系表达式),最终......