向右移动并添加一个命令

时间:2016-09-21 02:09:02

标签: assembly arm cortex-m3 cortex-m

我正在学习ARM Cortex的汇编语言,我遇到了以下问题:

  

为以下计算编写一行汇编指令:   在R2的内容上应用算术右移,然后添加   R1和R2的内容并将结果存储在R0中。

我理解算术右移为:

ASR R0, R2, #9

要做一个添加就是:

ADD R0, R1, R2

但我不确定如何将这些组合成一个命令。 到目前为止,我已经从一个示例中得到了以下内容,我看到它们看起来好像是以类似的方式在一行上执行两个命令:

ASR R0, R2, #9, [ADD R1, R2]

我知道这可能是错的,所以有人可以向我解释应该怎么做吗?

1 个答案:

答案 0 :(得分:0)

现在看来你现在正走在正确的轨道上。

add rd, rn, rm, asr #n