5
助记符 说明 操作 条件码位置
MUL Rd,Rm,Rs
32 位乘法指令
Rd←Rm*Rs (Rd≠Rm)
MUL{cond}
{S}
MLA Rd,Rm,Rs,Rn
32 位乘加指令
Rd←Rm*Rs+Rn
(Rd≠Rm)
MLA{cond}
{S}
UMULL
RdLo,RdHi,Rm,Rs
64 位无符号乘法指
令
(RdLo,RdHi) ←Rm*Rs
UMULL{cond
}{S}
UMLAL
RdLo,RdHi,Rm,Rs
64 位无符号乘加指
令
(RdLo,RdHi)
←Rm*Rs+(RdLo,RdHi)
UMLAL{cond
}{S}
SMULL
RdLo,RdHi,Rm,Rs
64 位有符号乘法指
令
(RdLo,RdHi) ←Rm*Rs
SMULL{cond
}{S}
SMLAL
RdLo,RdHi,Rm,Rs
64 位有符号乘加指
令
(RdLo,RdHi)
←Rm*Rs+(RdLo,RdHi)
SMLAL{cond
}{S}
ARM 指令——乘法指令
32 位乘法指令—— MUL 指令将 Rm 和 Rs 中的值相乘,结果的低
32 位保存到 Rd 中。 Rd,Rm,Rs 不能为 R15 。只影响 CPSR 中的 N 位和
Z 位。指令格式如下:
MUL{cond}{S} Rd,Rm,Rs
应用示例:
MUL R1,R2,R3 ;R1=R2×R3
MULS R0,R3,R7 ;R0=R3×R7 ,影响 CPSR 中的 N 位和 Z 位
第 4 页 / 共 36 页