LSL、LSR、ASR 和 ROR 是什么类型的 ARMv8 指令?

What type of ARMv8 instructions are LSL, LSR, ASR & ROR?

我正在学习 Armv8 的基础知识,并且正在回答要求将每条指令分类为特定类型的家庭作业问题。

数据处理指令包括:

AND, EOR, SUB, RSB, ADD, ADC, SBC, RSC, TST, TEQ, CMP, CMN, ORR, MOV, BIC & MVN.

分支进程:

B, BL

传输过程:

STR, STRB, LDR & LDRB

但是,关于 LSL、LSR、ASR 和 ROR 指令属于哪一类,我无法在 ARMv8 参考手册中找到任何明确的答案。

我假设它不是乘法类别,但我想如果它是乘法类别就有意义了,因为移位与乘以 2 的幂相同?

文档将它们列为数据处理操作,而不是在顶部的列表中,但是当您深入了解数据处理操作组的描述时,它会将它们列在那里。对于 aarch32,我认为它们只是带有移位操作数的 mov 指令,对于 aarch64,我不确定它们是它们自己的东西还是只是 mov 的伪指令。