ARM 二进制 MUL 和数据操作之间的区别
Difference between ARM binary MUL and Data Manipulation
好的,所以我知道 mul
和 add
、sub
等之间的区别
我要问的是二进制文件(我需要为项目制作一个 ARM 模拟器)。
如果数据处理指令的 I
位为零,并且 OpCode
为 0b000X,我相当确定你可以得到一个中间为 0b1001 的 Operand2,这将给出数据处理指令与MUL
指令格式相同。
那么在解释时如何区分这些指令呢?
您无法分辨出其中的区别,而且更常见的是,并非这些指令实际执行相同的操作,例如乘以 1、2,这与左移等同。
在MUL指令中,4-7位的1001很重要。在数据处理中,它将第 4 位或第 7 位设置为零。
好的,所以我知道 mul
和 add
、sub
等之间的区别
我要问的是二进制文件(我需要为项目制作一个 ARM 模拟器)。
如果数据处理指令的 I
位为零,并且 OpCode
为 0b000X,我相当确定你可以得到一个中间为 0b1001 的 Operand2,这将给出数据处理指令与MUL
指令格式相同。
那么在解释时如何区分这些指令呢?
您无法分辨出其中的区别,而且更常见的是,并非这些指令实际执行相同的操作,例如乘以 1、2,这与左移等同。
在MUL指令中,4-7位的1001很重要。在数据处理中,它将第 4 位或第 7 位设置为零。