【问题标题】:Offset an index with the value in another register ARMv8用另一个寄存器 ARMv8 中的值偏移索引
【发布时间】:2021-09-26 19:55:10
【问题描述】:

如果我能够使用以下命令从内存中加载一个值 + 一些偏移量的寄存器 (R5):

LDR R5, [R12, #4]

如何使用另一个寄存器的值(例如 R7 =0x0004)作为偏移量?

LDR R5, [R12, &R7]

【问题讨论】:

  • LDR R5, [R12, R7]?
  • LDR R5, [R12, R7]! 将更新后的偏移量写回r12
  • ARMv8 是否为 32 位 ARM 模式引入了任何新的寻址模式?它引入了 64 位 AArch64 模式,但你没有使用它。大多数只是惊讶地看到有关仅标记为 ARMv8 的 32 位 ARM 东西的问题,尤其是那些永远存在的功能。

标签: assembly arm addressing-mode armv8


【解决方案1】:

您几乎拥有它,但 & 符号不属于。简直了

LDR R5, [R12, R7]

【讨论】:

    【解决方案2】:

    问题已在原始问题评论部分得到解答。两天后 StackOverflow 允许我时将标记为已回答。

    【讨论】:

    • 以后如果评论提供了您正在寻找的答案或提示,您可以将其复制到您自己的答案中。 (如果您不想因他人的工作而受到赞扬,请将其设为社区 wiki)。但是不要只是发布“它在 cmets 中得到了回答”作为一个答案。始终确保您作为答案发布的任何内容在此帖子中确实包含对该问题的答案。因此,如果 cmets 得到清理,答案并没有消失。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-02
    • 1970-01-01
    • 2016-11-11
    • 1970-01-01
    • 2018-04-03
    相关资源
    最近更新 更多