算術運算指令與邏輯運算指令_第1頁
算術運算指令與邏輯運算指令_第2頁
算術運算指令與邏輯運算指令_第3頁
算術運算指令與邏輯運算指令_第4頁
算術運算指令與邏輯運算指令_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第六講算術運算指令與邏輯運算指令TMS320C54X共有129條指令。按功能分為4大類:算術運算指令;邏輯運算指令;程序控制指令;存儲和裝入指令。,1.算術運算指令(79條分為6小類)加法指令(ADD);減法指令(SUB);乘法指令(MPY);乘加指令(MAC)和乘減指令(MAS);雙數/雙精度指令(DADD、DSUB);特殊操作指令(ABDST、SQDST)。,(1)加法指令(13條)附錄ATMS320C54X指令集說明:不同的加法指令用途不同;ADD:不帶進位;ADD:不帶進位、移位;ADDC:帶進位;ADDM:專用于立即數;ADDS:無符號數;,AddInstructions,附錄A,加法指令舉例【例1】ADD*AR3+,14,A;;指令受SXM和OVM狀態(tài)標志的影響,;指令執(zhí)行結果影響C和OVA/OVB;,加法指令舉例【例1】ADD*AR3+,14,A;指令受SXM和OVM狀態(tài)標志的影響,;指令執(zhí)行結果影響C和OVA/OVB;,(2)減法指令(13條)附錄A說明:SUBS用于無符號數的減法運算;SUBB用于帶借位的減法運算(如32位擴展精度的減法);SUBC為條件減法.,減法指令舉例【例2】SUBB*AR1+,B;;指令受C和OVM狀態(tài)標志的影響,;指令執(zhí)行結果影響C和OVsrc;,減法指令舉例【例2】SUBB*AR1+,B;;指令受C和OVM狀態(tài)標志的影響,;指令執(zhí)行結果影響C和OVsrc;,(3)乘法指令(10條)附錄A說明:不同的乘法指令完成不同的功能MPY:普通乘指令;MPYR:帶四舍五入指令;MPYA:A累加器高端參與乘法;MPYU:無符號乘法;SQUR:平方;小數乘法將FRCT設置為1,系統自動將乘積結果左移1位。,乘法指令舉例【例3】MPY13,A;P164;指令受FRCT和OVM狀態(tài)標志的影響,;指令執(zhí)行結果影響OVdst;,(4)乘加和乘減指令(15條)附錄A【例4】MAC*AR5+,A;A+(AR5)*TA,AR5=AR5+1,(4)乘加和乘減指令(15條)附錄A【例4】MAC*AR5+,A;A+(AR5)*TA,AR5=AR5+1,MAC*AR3+,*AR4+,A;?,Example5:MACR*AR5+,*AR6+,A,B,Example5:MACR*AR5+,*AR6+,A,B,問題,?請用ADD和MPY指令代替MAC*AR5+,#1234h,AMPY*AR5+,#1234h,BADDB,A?什么區(qū)別?,(5)長操作數指令(6條)附錄ADADDLmem,src,dst;P149,例6:DADD*AR3,A,B,;ST1中的C16決定了指令的執(zhí)行方式。,例6:DADD*AR3,A,B,;ST1中的C16決定了指令的執(zhí)行方式。,(6)特殊應用指令(15條)附錄A求絕對值求累加器指數求累加器的最大/小值歸一化求多項式的值求兩點之間距離的平方求最小均方值對稱有限沖擊響應濾波器等,FIRSXmem,Ymem,pmad;B=B+A(3216)*pmad,A=(Xmem+Ymem)16MAXdstdst=max(A,B)MINdstdst=min(A,B),例7:FIRS*AR3+,*AR4+,COEFFS;P154,;指令受FRCT,SXM和OVM狀態(tài)標志的影響,;指令執(zhí)行結果影響C和OVdst;,例7:FIRS*AR3+,*AR4+,COEFFS,;指令受FRCT,SXM和OVM狀態(tài)標志的影響,;指令執(zhí)行結果影響C和OVdst;,2.邏輯指令(5小類)與指令(AND);或指令(OR);異或指令(XOR);移位指令(ROL);測試指令(BITF)。(1)與、或、異或指令(共15條)附錄A(2)移位指令和測試指令(共11條)附錄A,與指令(AND),ANDSmem,srcAND#lk,SHFT,src,dstAND#lk,16,src,dstANDsrc,SHIFT,dstANDM#lk,Smem,例8:ANDA,3,B,例8:ANDA,3,B,例9:BITT*AR7+0,例9:BITT*AR7+0,實例程序:建立項目工程文件example1,使之實現計算y=mx+b;.titleexample1.asm.mmregsSTACK.usectSTACK,10H;堆棧的設置.bssx,1;為變量分配4個字的存儲空間.bssm,1.bssb,1.bssy,1.def_c_int00.datatable.word15,3,20;x,m,b.text_c_int00:STM#0,SWWSR;插入0個等待狀態(tài)STM#STACK+10H,SP;設置堆棧指針STM#x,AR1;AR1指向xRPT#2MVPDtable,*AR1+;把程序存儲器中的數據移動到數據存儲器CALLSUMMend:BendSUMM:LD*(x),TMPY*(m),AADD*(b),ASTLA,*(y)RET.end,CPU狀態(tài)和控制寄存器C54xDSP的CPU有三個狀態(tài)和控制寄存器:(1)狀態(tài)寄存器0(ST0);(2)狀態(tài)寄存器1(ST1);(3)處理器工作模式狀態(tài)寄存器(PMST)。ST0和ST1中包含CPU各種工作條件和工作方式的狀態(tài),PMST中包含存儲器的設置狀態(tài)及其他控制信息。,狀態(tài)寄存器(ST0)功能:反映尋址要求和計算中的狀態(tài);ST0的結構圖:,含義:ARP輔助寄存器指針TC測試/控制標志位C進位位。OVA/OVB累加器A/B的溢出標志位DP數據存儲器頁指針,(AuxiliaryRegisterPointer),(Overflow),(Datapage),狀態(tài)寄存器(ST1)功能:反映尋址要求、計算初始狀態(tài)、I/O終端控制。ST1的結構圖:,含義:BRAF塊重復操作標志位。CPL直接尋址編輯方式位XFXF引腳狀態(tài)位。HM保持方式位INTM中斷方式位。OVM

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論