一文搞懂 ARM 64 系列: ADD(立即数版)
汇编中,加法指令很重要,因为它是执行其他很多指令的基础。
同时,加法指令也会影响NZCV
标志。有关NZCV
的介绍,可以参看《一文搞懂 ARM 64 系列: ADC》。
ARM64
汇编中,ADD
指令有3
种形式,这里介绍第一种形式,也就是与立即数
相加。
1 指令语法
ADD <Xd|SP>, <Xn|Sp>, #imm{, shift}
{}
里的内容表示是可选的。
shift
表示LSL(逻辑左移)
的位数,有2
个取值,一个是0
,一个是12
。0
是其默认值。
所谓LSL(逻辑左移)
,是指将数值整体向左移动,低位补0
。如果高位被移出去,直接丢弃。
2 指令语义
整个指令就是将源寄存器<Xn|SP>
,与立即数imm
(如果有必要,需要进行LSL
)相加,将结果写入目的寄存器<Xd|SP>
。
注意,这条指令不影响NZCV
标志。
(<Xd|SP>, _) = <Xn|Sp> + imm << shift
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
2013-11-15 卡塔训练