新聞中心

ARM乘法指令

作者: 時間:2012-11-26 來源:網絡 收藏
  :一類為32位的,即乘法操作的結果為32位;另一類為64位的,即乘法操作的結果為64位。

 ?。?)MUL 32位乘法指令

  MUL提供32位整數乘法。如果操作數是有符號的,則可以假定結果也是有符號的。

 ?。?)MLA 32位帶加法的乘法指令

  MLA的行為同MUL,但它把操作數3的值加到結果上,這在求總和時有用。

  (3)SMULL 64位有符號數乘法指令

  SMULL指令實現兩個32位的有符號數的乘積,乘積結果的高32位存放到一個32位的寄存器<RdHi>中,低32位存放到另一個32位的寄存器(RdLo>中,同時可以根據運算結果設置CPSR寄存器中相應的條件標志位??紤]指令執(zhí)行的效率,指令中所有操作數都放在寄存器中。

 ?。?)SMLAL 64位帶加法的有符號數乘法指令

  SMLAL指令將兩個32位有符號數的64位乘積結果與<RdLo>和<RdHi>中的64位數相加,相加結果的高32位存放到一個32位的寄存器<RdHi)中,低32位存放到另一個32位的寄存器(RdLo>中,同時可以根據運算結果設置∷CPSR寄存器中相應的條件標志位。

 ?。?)UMULL 64位無符號數乘法指令

  UMULL指令實現兩個32位有符號數的乘積,乘積結果的高32位存放到一個32位的寄存器<RdHi)中,乘積結果的低32位存放到另一個32位的寄存器(RdLo>中,同時可以根據運算結果設置CPSR寄存器中相應的條件標志位??紤]指令執(zhí)行的效率,指令中所有操作數都放在寄存器中。

 ?。?) 64位帶加法的無符號數乘法指令

  指令將兩個32位無符號數的64位乘積結果與<RdLo>和<RdHi>中的64位無符號數相加,相加結果的高32位存放到一個32位的寄存器(RdHi)中,低32位存放到另一個32位的寄存器<RdLo>中,同時可以根據運算結果設置CPSR寄存器中相應的條件標志位。



關鍵詞: ARM 乘法指令 UMLAL

評論


相關推薦

技術專區(qū)

關閉