乘法指令之:MUL乘法指令
ARM乘法指令完成兩個數據的乘法。兩個32位二進制數相乘的結果是64位的積。在有些ARM的處理器版本中,將乘積的結果保存到兩個獨立的寄存器中。另外一些版本只將最低有效32位存放到一個寄存器中。
無論是哪種版本的處理器,都有乘-累加的變型指令,將乘積連續累加得到總和。而且有符號數和無符號數都能使用。對于有符號數和無符號數,結果的最低有效位是一樣的。因此,對于只保留32位結果的乘法指令,不需要區分有符號數和無符號數兩種情況。
乘法指令的二進制編碼格式如圖7.1所示。
圖7.1乘法指令的二進制編碼
表7.1顯示了各種形式乘法指令的功能。
表7.1 各種形式乘法指令
操作碼[23:21]
助記符
意義
操作
000
MUL
乘(保留32位結果)
Rd:=(Rm×Rs)[31∶0]
001
MLA
乘-累加(32位結果)
Rd:=(Rm×Rs+Rn)[31∶0]
100
UMULL
無符號數長乘
RdHi:RdLo:=Rm×Rs
101
UMLAL
無符號長乘-累加
RdHi:RdLo:+=Rm×Rs
110
SMULL
有符號數長乘
RdHi:RdLo:=Rm×Rs
111
SMLAL
有符號數長乘-累加
RdHi:RdLo:+=Rm×Rs
其中:
①“RdHi:RdLo”是由RdHi(最高有效32位)和RdLo(最低有效32位)鏈接形成的64位數,“[31:0]”只選取結果的最低有效32位。
②簡單的賦值由“:=”表示。
③累加(將右邊加到左邊)是由“+=”表示。
同其他數據處理指令一樣,位S控制條件碼的設置。當在指令中設置了位S時,則有以下結果。
①對于產生32位結果的指令形式,將標志位N設置為Rd的第31位的值;對于產生長結果的指令形式,將其設置為RdHi的第31位的值。
②對于產生32位結果的指令形式,如果Rd等于零,則標志位Z置位;對于產生長結果的指令形式,RdHi和RdLo同時為零時,標志位Z置位。
③將標志位C設置成無意義的值。
④標志位V不變。
注意
乘法指令不能對第二操作數使用立即數或被移位的寄存器。
7.1MUL乘法指令1.指令編碼格式MUL(Multiply)32位乘法指令將Rm和Rs中的值相乘,結果的最低32位保存到Rd中。
指令的編碼格式如圖7.2所示。
圖7.2MUL指令的編碼格式
您可能也感興趣:
為您推薦
保險業協會將圍繞七方面加強消保工作力度 提升行業整體水平
保險公司推出“電信詐騙險” 市民仍須提高防騙意識
天津:做好失業保險穩崗返還工作 實行“免申即享”經辦模式
排行
最近更新
- 乘法指令之:MUL乘法指令
- 強電和弱電的區別- -電壓高低??No
- 業務篇之資產證券化(一)
- 泗縣城鄉困難群體法律援助撐起青少年維權“保護傘”
- 金輝控股:歸母凈利潤微漲全靠“明股實債”,短債壓力最為要命
- 泗縣:司法行政人用行動詮釋誓言
- 美債收益率不斷上升,對市場會有何影響?
- 靈璧縣尹集鎮:疫情防控不放松 “四送一服”不緩停
- 轉債投資熱勿忘有風險
- 天津、重慶、廣州等十多個城市被納入數字人民幣研發試點
- 廣東上線“預制菜大賣場”平臺
- 地方債發行節奏將加快 資金使用效率有望提升
- 嚴守財務安全碧桂園2022年已無境內到期債券 將考慮積極收并購
- 福建稅務:落實大規模留抵退稅 提振市場主體發展活力
- 余姚經開建投發行1億美元高級無抵押債券,息票率3.90%
- 護航春耕生產 公安機關依法嚴厲打擊涉農違法犯罪
- 教育部對義務教育階段學科類校外培訓治理“回頭看”
- 證監會公布20起典型違法案例 多種財務造假形式被點名
- 海參什么時間吃效果好
- 成都6名病例至少分屬于兩條傳播鏈 首例病例為奧密克戎變異株
- 織密基金監管網 共筑醫保防護線金華醫保基金監管集中宣傳月來了
- “星星”的痛苦,不只是“孤獨”!
- 預防毒蘑菇中毒唯一方法:不采摘、購買和食用野生蘑菇!
- 人民銀行長沙中心支行志愿服務隊馳援吉林抗疫一線
- 齊魯詩人 | 張浩程:七絕·桃花
- 復原康復之路 舞出多彩人生
- 燃氣安全裝置科普小知識之1——燃氣自閉閥
- 放飛“風正” 傳遞廉潔
- 四川資陽:開展2022年精神障礙社區康復快閃活動
- 四川岳池:示范幼兒園開展2022年清明節主題活動