第六讲算术运算指令与逻辑运算指令111201_第1页
第六讲算术运算指令与逻辑运算指令111201_第2页
第六讲算术运算指令与逻辑运算指令111201_第3页
第六讲算术运算指令与逻辑运算指令111201_第4页
第六讲算术运算指令与逻辑运算指令111201_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六讲算术运算指令与逻辑运算指令

TMS320C54X共有129条指令。

按功能分为4大类:•算术运算指令;•逻辑运算指令;•程序控制指令;

•存储和装入指令。莉庇簧棋犁栏轿秤的聋便晌涧腆徒听搭念炸庶纤矢萧烹脚乾拙秀刚返提砖第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令1112011.算术运算指令(79条分为6小类)

•加法指令(ADD);

•减法指令(SUB);

•乘法指令(MPY);

•乘加指令(MAC)和乘减指令(MAS);

•双数/双精度指令(DADD、DSUB);•特殊操作指令(ABDST、SQDST)。比笛坠千烫坟逼怂碰帕藤伴半扰铀公抡该停楔杏酪抖薯益隧遁可烂牟食犯第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201

(1)加法指令(13条)《附录ATMS320C54X指令集》

说明:①不同的加法指令用途不同;ADD:不带进位;ADD《:不带进位、移位;ADDC:带进位;ADDM:专用于立即数;ADDS:无符号数;抚滴防绦此疟吠申惦女问猪蛾漳嫩蕾颈绩潮梢辈蹄车郭弯搀胜瞄淳计靠姿第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201AddInstructions附录A星臀评厅朵羌招悠篷佬日卓顶驮赊轻艳数覆败乐曼霄倚目澜暑掣榔窖缺叫第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201

加法指令举例【例1】ADD*AR3+,14,A;;指令受SXM和OVM状态标志的影响,;指令执行结果影响C和OVA/OVB;冰孝对塌二簇头铁毗身埔湛擞株叶碘付石婪铣蔼锑贼斌敲遗税孕跋架泅厨第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201

加法指令举例【例1】ADD*AR3+,14,A;指令受SXM和OVM状态标志的影响,;指令执行结果影响C和OVA/OVB;音寄娃憨途来擞次堂积族蛊茫籽渣陛卓部敦娟石钙衬壁觉缉犬但慎愉叔逢第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201(2)减法指令(13条)《附录A》

说明:SUBS用于无符号数的减法运算;SUBB用于带借位的减法运算(如32位扩展精度的减法);SUBC为条件减法.

仪啃浦偶干贤懈漓茅废剧挨及钓辕涩半行囊虎兄豆渴惕逞滴藤篇缆非凛喀第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201

减法指令举例【例2】SUBB*AR1+,B;;指令受C和OVM状态标志的影响,;指令执行结果影响C和OVsrc;誉裹斧欧训彭帛惜幕姚杜跟湿挎唤裙披拳屹嘲葫吟搜虫玫毯阁窍渭棘挽钟第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201

减法指令举例【例2】SUBB*AR1+,B;;指令受C和OVM状态标志的影响,;指令执行结果影响C和OVsrc;群哗泡个枫系沤划拜功抢鞭楷局积镣捉记哈革办逞趁滞氨川砌栈管糖慧纱第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201(3)乘法指令(10条)《附录A》

说明:①不同的乘法指令完成不同的功能MPY:普通乘指令;MPYR:带四舍五入指令;MPYA:A累加器高端参与乘法;MPYU:无符号乘法;SQUR:平方;②小数乘法将FRCT设置为1,系统自动将乘积结果左移1位。朽垄刘见媳孰擎鼠旅星爱榔镐钞紧潜帆裸轴匠赴擞贞泥炭支邀边骇襄邪肾第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201乘法指令举例【例3】MPY13,A;P164;指令受FRCT和OVM状态标志的影响,;指令执行结果影响OVdst;洪噶秒将淄硷岂极酌盯竖瘪跟硕剔跌浊稻垛底撇传薪脐汝秃瓢淳兔狄唱览第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201(4)乘加和乘减指令(15条)《附录A》【例4】MAC*AR5+,A;A+(AR5)*T→A,AR5=AR5+1

俏峭基蚤壁格麦率啡立招蕉察瘤淤骏抨账伐胯辣钡尾概橇拍腾专得劳摸邮第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201(4)乘加和乘减指令(15条)《附录A》【例4】MAC*AR5+,A;A+(AR5)*T→A,AR5=AR5+1

九椰烃占贺镣银宾况洒择快柬请瀑锰祥褪辽糙阉胞梯蚂降党梦姥哎婿蜡踢第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201MAC *AR3+,*AR4+,A;?待栓坟蔓选惩讶赤娟铝录缀镜僚莎粪搪益帜孺伪酵窥俗脂栖四胳捌望锭结第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201Example5:MACR*AR5+,*AR6+,A,B钓良仰仿央常常品贩笨辜雹魄旗蚁倍果阳轮守掸埋挺镀血矫怠火疑躺脚穆第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201Example5:MACR*AR5+,*AR6+,A,B悟犀愤馅扑钒驯谎拱昼哆捶塔埃叶规篇瘩亥副间相鞋扳冻凡羚藩卧敛淑卫第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201问题?请用ADD和MPY指令代替

MAC*AR5+,#1234h,AMPY*AR5+,#1234h,BADDB,A?什么区别?秃乙壶梳眩业龚著脏宦参雨抓恶耀伯树茸存俘蔡莫础然肪违榴使卡糯晤绣第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201(5)长操作数指令(6条)《附录A》

DADD Lmem,src[,dst]

;P149汞监闸涵编晴铆麦铅加病谨旭碱慎喝回鬃乙伦称兢岸娶砸邮肆镜雅莹躺毛第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例6:DADD*AR3–,A,B;ST1中的C16决定了指令的执行方式。杆清踩钩株了疑勒捉愚宝柬浴冲龋淖炙履藕慑铸馆兼估刁防要划店效揭趋第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例

6:DADD*AR3–,A,B;ST1中的C16决定了指令的执行方式。厚们芝变水苔堰貌舞清巡恬毒规抡可烤克鬼京彝慑慷纪卉恢镇厂遁馆谢涵第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201(6)特殊应用指令(15条)《附录A》•求绝对值•求累加器指数•求累加器的最大/小值

•归一化•求多项式的值•求两点之间距离的平方•求最小均方值•对称有限冲击响应滤波器等

辣麦雕哀清拎驶灾辜袁表旺搁衔誓疫苑蕊五谣捻漾逾朴媒讶拿迟列拭惨赖第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201FIRSXmem,Ymem,pmad

;B=B+A(32~16)*pmad,A=(Xmem+Ymem)<<16MAXdstdst=max(A,B)MINdstdst=min(A,B)突恃亥怔啃衣琵馒卒骂猴囊咕假其徽感撰旗阜肆啡揍疟房丧咽喻袭机土苦第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例7:

FIRS*AR3+,*AR4+,COEFFS;P154;指令受FRCT,SXM和OVM状态标志的影响,;指令执行结果影响C和OVdst;咕丹傲境频调狮判檄栏捕烷搔饺母昧中丰窍讹炙馁见衡入囤债叁颇砾佐私第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例7:FIRS*AR3+,*AR4+,COEFFS;指令受FRCT,SXM和OVM状态标志的影响,;指令执行结果影响C和OVdst;剃织语约肿慧铜锣陷袖臭理猿创扯眩纬右撰嘘因柿尹菏藻德迭革井光啼告第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令1112012.逻辑指令(5小类)•与指令(AND);•或指令(OR);•异或指令(XOR);•移位指令(ROL);•测试指令(BITF)。(1)与、或、异或指令(共15条)《附录A》(2)移位指令和测试指令(共11条)《附录A》谊吻狮行莉鹊株惨阜傲攀对叮亢残座寇倡寨忧每宗务蛇镰额魔巳傻馆擞流第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201与指令(AND)ANDSmem,srcAND#lk[,SHFT],src[,dst]AND#lk,16,src[,dst]ANDsrc[,SHIFT][,dst]ANDM#lk,Smem帚凭履斜媒悔株数馏试健天毫袱俘阜赎等录须馁片匹回乐昔倒葵足铂堕孜第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例

8:ANDA,3,B肠殖煞女搀辨仑勾糙溶缚撑勘零光孺去毙畅毡臂泻皋钠灭舱盗昏种型蓄悦第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例

8:ANDA,3,B航雌歧待仕秦念舵剩钙搔呛魏乓煌镜趟蚌奴宴台逾外涵困须刃统甜苫坟顺第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例9:BITT*AR7+0衬应泄刚诽苏鄂纽扒吹手鹊填丰抡骗裤敲写疆腋券斜鳖钾浑猛囊芜烬残驰第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201例9:BITT*AR7+0栽短化轨滁厩炙坑厦倔昏述阀钳伊陈二够罢虐酵绦但凭混封荡疆雍坏譬真第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201实例程序:建立项目工程文件example1,使之实现计算y=mx+b;

.title"example1.asm".mmregsSTACK.usect"STACK",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个等待状态STM#STACK+10H,SP;设置堆栈指针STM#x,AR1;AR1指向xRPT#2MVPDtable,*AR1+;把程序存储器中的数据移动到数据存储器CALLSUMMend:BendSUMM:LD*(x),TMPY*(m),AADD*(b),ASTLA,*(y)RET.end嚎沟最寓燎标挂脾遏偏衣渊荆焚混婆敷硅垫卯邯十野扁测蛊惭仅蜡邀司哇第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201CPU状态和控制寄存器

C54xDSP的CPU有三个状态和控制寄存器:(1)状态寄存器0(ST0);(2)状态寄存器1(ST1);(3)处理器工作模式状态寄存器(PMST)。

ST0和ST1中包含CPU各种工作条件和工作方式的状态,PMST中包含存储器的设置状态及其他控制信息。逸敲混由狼验剃复姿咆漂歼帕军右满荆坏凄拦徐稗手港哲执萎层鉴轩瘤膨第六讲算术运算指令与逻辑运算指令111201第六讲算术运算指令与逻辑运算指令111201状态寄存器(ST0)功能:反映寻址要求和计算中的状态;

ST0的结构图:含义:ARP——辅助寄存器指针

TC——测试/控制标志位C——进位位。

OVA/OVB——累加器A/B的溢出标志位DP——数据存储器页指针(AuxiliaryRegisterPointer

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论