Assembly 右移并添加一个命令

Assembly 右移并添加一个命令,assembly,arm,cortex-m3,cortex-m,Assembly,Arm,Cortex M3,Cortex M,我正在学习手臂皮质的汇编语言,我有以下问题: 为以下计算编写一行装配说明: 对R2的内容应用算术右移,然后添加 R1和R2的内容,并将结果存储在R0中 我将算术右移理解为: ASR R0,R2,#9 添加的步骤很简单: 添加R0、R1、R2 但我不确定如何将这些合并到一个命令中。 到目前为止,我已经从我看到的一个示例中得出了以下结论,该示例看起来好像他们以类似的方式在一行上执行两个命令: ASR R0,R2,#9,[添加R1,R2] 我知道这可能是错误的,所以谁能向我解释一下应该怎么做呢?看来你

我正在学习手臂皮质的汇编语言,我有以下问题:

为以下计算编写一行装配说明: 对R2的内容应用算术右移,然后添加 R1和R2的内容,并将结果存储在R0中

我将算术右移理解为:

ASR R0,R2,#9

添加的步骤很简单:

添加R0、R1、R2

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

ASR R0,R2,#9,[添加R1,R2]


我知道这可能是错误的,所以谁能向我解释一下应该怎么做呢?

看来你现在走对了方向

add rd, rn, rm, asr #n

对移位输入操作数使用
add
。它不会以另一种方式工作@PeterCordes,类似于:
添加R0、R1、R2、ASR#9
?这几乎与我链接的页面上的一个示例完全相同,所以是的,我认为这是有效的语法。你应该检查它是否装配好了。