如何在 GNU Arm 汇编语法中使用移位操作数?

问题描述 投票:0回答:1

我知道在 arm 组件中我们可以使用 shifter 操作数,如下所示:

mov r0, r1, lsl #2

我使用gcc来编译,因此我必须调整语法。

我已经尝试过这个:

mov w0, w1, lsl 2

它不起作用:

unexpected characters following instruction at operand 2
。对我来说,它说它无法处理第三个操作数。

有没有其他语法可以在 gnu 中完成相同的工作?

assembly arm gnu-assembler
1个回答
0
投票

mov r0, r1, lsl #2
在 gnu as 中对我来说工作得很好。

我有

GNU assembler (2.35.2-2+14+b2) 2.35.2

可能您没有在文件中指定正确的命令行标志或选项。

尝试在文件顶部添加类似以下内容:

.syntax   unified
.cpu      cortex-m4
© www.soinside.com 2019 - 2024. All rights reserved.