ARM乘法指令
(1)MUL 32位乘法指令
MUL提供32位整数乘法。如果操作数是有符号的,则可以假定结果也是有符号的。
(2)MLA 32位带加法的乘法指令
MLA的行为同MUL,但它把操作数3的值加到结果上,这在求总和时有用。
(3)SMULL 64位有符号数乘法指令
SMULL指令实现两个32位的有符号数的乘积,乘积结果的高32位存放到一个32位的寄存器<RdHi>中,低32位存放到另一个32位的寄存器(RdLo>中,同时可以根据运算结果设置CPSR寄存器中相应的条件标志位。考虑指令执行的效率,指令中所有操作数都放在寄存器中。
(4)SMLAL 64位带加法的有符号数乘法指令
SMLAL指令将两个32位有符号数的64位乘积结果与<RdLo>和<RdHi>中的64位数相加,相加结果的高32位存放到一个32位的寄存器<RdHi)中,低32位存放到另一个32位的寄存器(RdLo>中,同时可以根据运算结果设置∷CPSR寄存器中相应的条件标志位。
(5)UMULL 64位无符号数乘法指令
UMULL指令实现两个32位有符号数的乘积,乘积结果的高32位存放到一个32位的寄存器<RdHi)中,乘积结果的低32位存放到另一个32位的寄存器(RdLo>中,同时可以根据运算结果设置CPSR寄存器中相应的条件标志位。考虑指令执行的效率,指令中所有操作数都放在寄存器中。
(6)UMLAL 64位带加法的无符号数乘法指令
UMLAL指令将两个32位无符号数的64位乘积结果与<RdLo>和<RdHi>中的64位无符号数相加,相加结果的高32位存放到一个32位的寄存器(RdHi)中,低32位存放到另一个32位的寄存器<RdLo>中,同时可以根据运算结果设置CPSR寄存器中相应的条件标志位。
- Linux嵌入式系统开发平台选型探讨(11-09)
- 基于ARM体系的嵌入式系统BSP的程序设计方案(04-11)
- 在Ubuntu上建立Arm Linux 开发环境(04-23)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- SQLite嵌入式数据库系统的研究与实现(02-20)
- 革新2410D开发板试用手记(04-21)