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 的伪指令。
我正在学习 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 的伪指令。