【ARM 常见汇编指令学习 2 -- 存储指令 STP 与 LDP】
创始人
2024-11-05 10:39:49
0

文章目录

    • STP 存储指令
    • LDP 加载指令

上篇文章:ARM 常见汇编指令学习 1 – 跳转指令 BL 与 BLR 区别
下篇文章:ARM 常见汇编指令学习 3 – ARM64 无符号位域提取指令 UBFX

STP 存储指令

在 ARMv8 架构中,STP指令用于将两个通用寄存器的值存储到内存中。STP指令的语法如下:

STP , , [{, #}] 

STP , , [{, #}] 

其中:

  • 表示两个要存储的32位通用寄存器,
  • 表示两个要存储的64位通用寄存器。
  • []表示存储的目标内存地址,是一个可选的偏移量。

STP指令将 的值存储到目标内存地址中,并且递增目标内存地址以便下一次存储。存储的数据可以是32位或64位,具体取决于使用的寄存器。

例如,下面的示例演示了如何使用STP指令将两个通用寄存器的值存储到内存中:

STP X0, X1, [X2]      ; 将X0和X1的值存储到[X2]地址中 STP W3, W4, [SP, #16] ; 将W3和W4的值存储到[SP+16]地址中 

请注意,STP指令在ARMv8架构中引入了64位寄存器,因此可以存储更大的数据量。

LDP 加载指令

LDP指令用于从内存中加载两个通用寄存器的值。LDP指令的语法如下:

LDP , , [{, #}] 

LDP , , [{, #}] 

其中:

  • 表示要加载的两个32位通用寄存器,
  • 表示要加载的两个64位通用寄存器。
  • []表示要加载的内存地址,是一个可选的偏移量。

LDP指令从目标内存地址中加载数据,并将其存储到和或和寄存器中。加载的数据可以是32位或64位,具体取决于使用的寄存器。
以下示例演示了如何使用LDP指令从内存中加载两个通用寄存器的值:

LDP X0, X1, [X2]      ; 从[X2]地址中加载值到X0和X1寄存器 LDP W3, W4, [SP, #16] ; 从[SP+16]地址中加载值到W3和W4寄存器 

请注意,LDP指令在ARMv8架构中引入了64位寄存器,因此可以加载更大的数据量。

上篇文章:ARM 常见汇编指令学习 1 – 跳转指令 BL 与 BLR 区别
下篇文章:ARM 常见汇编指令学习 3 – ARM64 无符号位域提取指令 UBFX

相关内容

热门资讯

aapoker外挂!aa po... aapoker外挂!aa poker有外挂吗,(aaPoker)切实是有挂(详细辅助新2025教程)...
透视美元局(wePoke)透明... 自定义wepoke有挂系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器,不管...
透视肯定(云扑克德州)德扑之星... 透视肯定(云扑克德州)德扑之星作弊(透视)原来真的是有挂(详细辅助扑克教程)1、完成德扑之星作弊透视...
透视有挂(wEPoke)外挂透... 此外,数据分析德州(wepoke辅助有挂)辅助神器app还具备辅助透视行为开挂功能,通过对客户wep...
aapoker有外挂!aa扑克... aapoker有外挂!aa扑克发牌机制,(AApOKER)确实是真的有挂(详细辅助规律教程)1、下载...
aapoker外挂!aapok... aapoker外挂!aapoker插件,(AAPOkER)真是是真的有挂(详细辅助曝光教程)aapo...
透视工具(WEPOKE)透明挂... 透视工具(WEPOKE)透明挂辅助app(WePoKe外挂)原本真的是有挂(详细透视黑科技教程),支...
aapoker辅助!aapok... aapoker辅助!aapoke辅助工具存在吗,(AaPOKER)真是是真的有挂(详细辅助解密教程)...
aapoker外挂!aapok... aapoker外挂!aapoker是谁开发的,(AAPoKER)果然存在有挂(详细辅助力荐教程)aa...
透视模拟器(来玩德州app)智... 透视模拟器(来玩德州app)智星德州菠萝有挂吗(透视)竟然存在有挂(详细辅助揭秘攻略)1、上手简单,...