3.5 算术和逻辑操作

一共可分为四组指令:加载有效地址、一元操作、二元操作、移位。
每个指令根据操作数的大小,又有bwlq四种后缀的变种。


屏幕快照 2017-09-29 下午3.11.44.png

3.5.1 加载有效地址
1.leaq是movq的变形,从内存读数据到寄存器,但是它根本就没有引用内存(不懂什么意思)。
2.此外,它还可以建单的描述算术操作,例如leaq 7(%rdx, %rdx, 4), %rax将把rax的值设置为5x+7.

3.5.2 一元和二元操作
1.一元操作的操作数可以是寄存器或内存位置。二元操作的第一个操作数可以是立即数、寄存器或内存位置,第二个操作数是寄存器或内存为止,同时既是源又是目的。

3.5.3 移位操作
1.移位操作的移位量可以是一个立即数或存放在单字节寄存器%cl中,目的操作数可以是寄存器或内存位置。

3.5.4 讨论

3.5.5 特殊的算术操作
1、x86-64对16字节运算提供有限的支持,Intel把16字节称为八字。


屏幕快照 2017-09-29 下午3.46.46.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...
    Gibbs基阅读 37,391评论 8 114
  • 算术和逻辑指令ADC : 带进位的加法(Addition with Carry)ADC{条件}{S} <dest...
    luffier阅读 3,817评论 0 3
  • 车到了以后,无人车在我的电子账户自动扣除了相应的比特币。 “hello,king.终于在现实世界中见到你了,虽然没...
    好玩的世界阅读 179评论 1 2
  • 还记得去年我姨要回老家,我挽留说你这里不是有房子嘛,就呆在这儿挺好。我姨说:“有房子不代表有家,不一样。”当时也是...
    柳树下的孩子阅读 202评论 0 3
  • 安迪强大又天真,高冷孤僻,初次露面就报警虽然屌炸天,但真摊上这样的邻居,你要不骂一句“神经病”,老子信了你的邪。 ...
    雨诗酱阅读 240评论 0 0