資料介紹
1.指令編碼格式
UMLAL(Unsigned Multiply Accumulate Long)為64位無符號長乘-累加指令。指令將Rm和Rs中的值做無符號數相乘,64位乘積與RdHi,RdLo相加,結果的低32位保存到RsLo中,而高32位保存到RdHi中。
指令的編碼格式如圖7.5所示。
![乘法指令之UMLAL無符號長乘累加操作指令解析](/uploads/allimg/171019/2362486-1G019103445318.png)
圖7.5 UMALL指令的編碼格式
2.指令的語法格式
UMALL{《cond》}{S} 《RdLo》,《RdHi》,《Rm》,《Rs》
① 《cond》
為指令編碼中的條件域。它指示指令在什么條件下執行。當《cond》忽略時,指令為無條件執行(cond=AL(Alway))。
② S
S位(bit[20])決定指令的操作是否影響CPSR中的條件標志位N位和Z位的值。當S=1時,更新CPSR中的條件標志位N位和Z位的值;當S=0時,指令不更新CPSR中的條件標志位。
③ 《RdLo》
存儲將要累加到《Rm》×《Rn》乘積結果中的加數的低32位數值的寄存器;同時也為寄存器位目標寄存器,存儲最終結果的低32位值。
④ 《RdHi》
存儲將要累加到《Rm》×《Rn》乘積結果中的加數的高32位數值的寄存器;同時也為寄存器位目標寄存器,存儲最終結果的高32位值。
⑤ 《Rm》
第一乘數寄存器。
⑥ 《Rn》
第二乘數寄存器。
3.指令操作的偽代碼
指令操作的偽代碼如下面程序段所示。
If ConditionPassed{cond} then
RdHi={Rm*Rs }[63:32]+RdHi+CarryFrom{{Rm*Rs}[31:0]+RdLo}
RdLo={Rm*Rs }[31:0]+RdLo
If S==1 then
N flag = RdHi[31]
Z flag = if ((RdHi==0)and(RdLo==0))then 1 else 0
C flag = unaffected
V flag = unaffected
4.指令舉例
下面的指令完成(R1,R0)= R5×R8+(R1,R0)操作。
UMLAL R0, R1, R5,R8;
?
UMLAL(Unsigned Multiply Accumulate Long)為64位無符號長乘-累加指令。指令將Rm和Rs中的值做無符號數相乘,64位乘積與RdHi,RdLo相加,結果的低32位保存到RsLo中,而高32位保存到RdHi中。
指令的編碼格式如圖7.5所示。
![乘法指令之UMLAL無符號長乘累加操作指令解析](/uploads/allimg/171019/2362486-1G019103445318.png)
圖7.5 UMALL指令的編碼格式
2.指令的語法格式
UMALL{《cond》}{S} 《RdLo》,《RdHi》,《Rm》,《Rs》
① 《cond》
為指令編碼中的條件域。它指示指令在什么條件下執行。當《cond》忽略時,指令為無條件執行(cond=AL(Alway))。
② S
S位(bit[20])決定指令的操作是否影響CPSR中的條件標志位N位和Z位的值。當S=1時,更新CPSR中的條件標志位N位和Z位的值;當S=0時,指令不更新CPSR中的條件標志位。
③ 《RdLo》
存儲將要累加到《Rm》×《Rn》乘積結果中的加數的低32位數值的寄存器;同時也為寄存器位目標寄存器,存儲最終結果的低32位值。
④ 《RdHi》
存儲將要累加到《Rm》×《Rn》乘積結果中的加數的高32位數值的寄存器;同時也為寄存器位目標寄存器,存儲最終結果的高32位值。
⑤ 《Rm》
第一乘數寄存器。
⑥ 《Rn》
第二乘數寄存器。
3.指令操作的偽代碼
指令操作的偽代碼如下面程序段所示。
If ConditionPassed{cond} then
RdHi={Rm*Rs }[63:32]+RdHi+CarryFrom{{Rm*Rs}[31:0]+RdLo}
RdLo={Rm*Rs }[31:0]+RdLo
If S==1 then
N flag = RdHi[31]
Z flag = if ((RdHi==0)and(RdLo==0))then 1 else 0
C flag = unaffected
V flag = unaffected
4.指令舉例
下面的指令完成(R1,R0)= R5×R8+(R1,R0)操作。
UMLAL R0, R1, R5,R8;
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 位操作指令
- 51單片機的匯編指令合集詳解
- 51單片機的數據傳遞類和控制轉移類指令的詳細資料說明
- 80X86指令系統-算術運算指令總結的詳細資料概述免費下載 0次下載
- PICmicro中檔單片機系列之指令集
- SMULL無符號長乘累加操作指令解析 1次下載
- SMLAL有符號長乘-累加操作指令解析 1次下載
- 數據處理指令之 BIC位清零指令解析 1次下載
- ARM指令尋址方式之內存訪問指令尋址 1次下載
- 數據處理指令之TST測試指令分析 1次下載
- 數據處理指令之SUB減操作指令分析 1次下載
- 數據處理指令之ORR邏輯或指令 2次下載
- 數據傳送指令之MOV指令 4次下載
- 數據處理指令之ADD加操作指令 1次下載
- RISC乘累加單元的擴展Extended RISC MAC
- 電路塊ANB指令與ORB指令操作 6577次閱讀
- 西門子S7-1200PLC移動操作指令:讀取域和寫入域指令 2422次閱讀
- SIMATIC S7-1500 PLC右移指令(SHR)簡述 4311次閱讀
- SIMATIC S7-1500 PLC左移指令(SHL)簡述 4869次閱讀
- PLC指令的應用方面到什么程度 589次閱讀
- 基于故障安全的雙手操作指令介紹 1185次閱讀
- RAMP的指令執行模式與脈沖輸出指令 1w次閱讀
- PIC單片機的各種清零指令解析 8687次閱讀
- PIC單片機的各種匯編語言指令的用法解析 7717次閱讀
- 8051單片機指令系統的用法介紹 6983次閱讀
- PLC的編程方法與應用指令的比較 2750次閱讀
- 8051單片機指令系統的7種尋址方式解析 1.4w次閱讀
- CPU操作指令詳解 9912次閱讀
- PLC指令轉換分享 2209次閱讀
- 指令和偽指令分得清嗎? 6961次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7藍牙設備在嵌入式領域的廣泛應用
- 0.63 MB | 3次下載 | 免費
- 89天練會電子電路識圖
- 5.91 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論