【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

相关内容

热门资讯

德扑之星解密!众合推扑克辅助工... 德扑之星解密!众合推扑克辅助工具(软件透明挂)其实真的是有挂(详细脚本教程)1、该软件可以轻松地帮助...
德扑ai线上!wepoke软件... 德扑ai线上!wepoke软件透明挂测试(辅助透视)原来真的有挂(详细脚本教程)1、完成wepoke...
WPK解说技巧!微扑克大厅机器... WPK解说技巧!微扑克大厅机器人(软件透明挂)原来真的有挂(详细透明教程)该软件可以轻松地帮助玩家将...
微扑克详细!wpk这个软件真实... 微扑克详细!wpk这个软件真实吗(透视辅助)原来真的有挂(详细开挂教程)1、起透看视 wpk这个软件...
微扑克辅助挂(辅助透视)wep... 微扑克辅助挂(辅助透视)wepoke有机器人吗(wepoke辅助挂)-哔哩哔哩1、微扑克辅助挂(辅助...
八分钟2024新版技巧!wpk... 八分钟2024新版技巧!wpk ai(透视)原来确实真的有挂(AI教程)八分钟2024新版技巧!wp...
德州ai透视!aapoker透... 德州ai透视!aapoker透明挂,德州透视辅助(详细开挂教程)1、德州ai透视!aapoker透明...
德州ai揭秘(辅助透视)云扑克... 德州ai揭秘(辅助透视)云扑克app辅助(智星德州菠萝开挂)-哔哩哔哩1、智星德州菠萝开挂系统规律教...
2分钟教你攻略!云扑克德州辅助... 2分钟教你攻略!云扑克德州辅助器(辅助透视)原来确实真的有挂(细节方法)是一款可以让一直输的玩家,快...
红龙扑克辅助(辅助)德扑之星系... 红龙扑克辅助(辅助)德扑之星系统有哪里规律(德扑ai智能)-哔哩哔哩1、德扑之星系统有哪里规律系统规...