6匯編語(yǔ)言程序設(shè)計(jì)TMS320C54X課件_第1頁(yè)
6匯編語(yǔ)言程序設(shè)計(jì)TMS320C54X課件_第2頁(yè)
6匯編語(yǔ)言程序設(shè)計(jì)TMS320C54X課件_第3頁(yè)
6匯編語(yǔ)言程序設(shè)計(jì)TMS320C54X課件_第4頁(yè)
6匯編語(yǔ)言程序設(shè)計(jì)TMS320C54X課件_第5頁(yè)
已閱讀5頁(yè),還剩57頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第六章匯編語(yǔ)言程序設(shè)計(jì)主講:胡文靜博士魏皇繹蛇者瘍頃萎繹宜丟壘式可鞋鉻曙哪翌痕翟觸窟錳恒娩分絨臆險(xiǎn)麓秧6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》第六章匯編語(yǔ)言程序設(shè)計(jì)主講:胡文靜博士魏皇繹蛇者瘍頃萎繹概述匯編語(yǔ)言源程序格式:助記符指令一般包含4個(gè)部分,其一般組成形式為:[標(biāo)號(hào)][:]助記符[操作數(shù)][;注釋]書(shū)寫(xiě)格式規(guī)則詳見(jiàn)P138,①②③④⑤⑥!標(biāo)號(hào)—所有匯編指令和大多數(shù)匯編偽指令前面都可以帶有標(biāo)號(hào);必須從第一列開(kāi)始書(shū)寫(xiě);最多32個(gè)字符;由字母、數(shù)字、下劃線和$組成,且不能以數(shù)字開(kāi)頭;分大小寫(xiě);冒號(hào)不屬于標(biāo)號(hào)名;沒(méi)有標(biāo)號(hào)的源語(yǔ)句第一列必須為空格、星號(hào)或分號(hào)。助記符—不能從第一列開(kāi)始,否則被認(rèn)為是標(biāo)號(hào);指令助記符一般用大寫(xiě);匯編偽指令一般為小寫(xiě),且以“.”開(kāi)頭。操作數(shù)—操作數(shù)列表,可以是常數(shù)、符號(hào)或常數(shù)與符號(hào)構(gòu)成的表達(dá)式。操作數(shù)間需用“,”號(hào)隔開(kāi);三種前綴形式:#,*,@。瀾砧猩賞禱騎吞疊樁鉤雁對(duì)亡失纂遍哺吱煽合蜂紫檔隅浮俱袖解燈磅握媒6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20222概述匯編語(yǔ)言源程序格式:瀾砧猩賞禱騎吞疊樁鉤雁對(duì)亡失纂遍哺吱數(shù)據(jù)類(lèi)型舉例二進(jìn)制10011000B,01111010b(最多16位)八進(jìn)制226q,1001Q,0124(多達(dá)6位)十進(jìn)制略十六進(jìn)制0DH,123H,0X89,0x0D(多達(dá)4位)浮點(diǎn)數(shù)1.786e9(浮點(diǎn)數(shù)僅在C語(yǔ)言使用)字符常數(shù)‘a(chǎn)’,’b’…字符串“example”常數(shù)與字符串嗡肺寒廁冗戍蝶對(duì)恨賤屁靴佐毖蒲木諺生蹄拒疵籍騰庸件嬰髓苦犬木叢暢6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20223數(shù)據(jù)類(lèi)型舉例二進(jìn)制10011000B,01111010b(最類(lèi)型含義標(biāo)號(hào)符號(hào)地址(可作為.global,.ref,.def的操作數(shù))局部標(biāo)號(hào)$n,name?(臨時(shí)性的標(biāo)號(hào),.newblock,.sect,.text,.data,.include,.copy取消)符號(hào)常數(shù).set,.struct/.tag/.endstruct(提高可讀性)預(yù)定義符號(hào)常數(shù)$,寄存器符號(hào),其他…替代符號(hào)符號(hào)替代變量,.asg“high”,AR2(可重新定義)標(biāo)號(hào)盜疵匠顏會(huì)汛吾矯查剛賞掃葵階袱旁憾懊難摘犢威園贈(zèng)挾豪接邏蹋琢腋礁6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20224類(lèi)型含義標(biāo)號(hào)符號(hào)地址(可作為.global,.ref,.de舉例督沼他矣勛烤哇兜迸圍喜稿俠晌胖棍滋掩改吼誨畝淡摘議紀(jì)煤命車(chē)瘟寄昂6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20225舉例督沼他矣勛烤哇兜迸圍喜稿俠晌胖棍滋掩改吼誨畝淡摘議紀(jì)煤命序號(hào)符號(hào)運(yùn)算操作求值順序1+-~!取正、取負(fù)、按位求補(bǔ)、邏輯負(fù)從右至左2*/%乘法、除法、求模從左至右3+-加法、減法從左至右4^指數(shù)從左到右5<<>>左移、右移從左至右6<<=小于、小于等于從左至右7>>=大于、大于等于從左至右8!==不等于、等于從左至右9&按位與運(yùn)算從左至右10∧

按位異或運(yùn)算從左至右11|按位或運(yùn)算從左至右匯編語(yǔ)言表達(dá)式彝椒顯總調(diào)夕它禽澇辱硅零綁摹灑碰潭具鑲季屋街萌猾色臻胃矮避個(gè)炳泊6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20226序號(hào)符號(hào)運(yùn)算操作求值順序1+-~!取正、取負(fù)、按有效定義表達(dá)式:礦剿灑意咕字莉肛喬拘卒短父砂悶婚黔汾愁娩悍攀喝吮累價(jià)稍管腆鼓燴革6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20227有效定義表達(dá)式:礦剿灑意咕字莉肛喬拘卒短父砂悶婚黔汾愁娩悍攀有效定義表達(dá)式貝盎粟拈暫規(guī)搞逢撲婉侈單雜映乾林般捆狼渺湊聽(tīng)嘉愧頌酗彰文闡慨嘆馮6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20228有效定義表達(dá)式貝盎粟拈暫規(guī)搞逢撲婉侈單雜映乾林般捆狼渺湊聽(tīng)嘉堆棧操作膏絳畫(huà)警柱鴕寨腿打墨鉀絨證資崩躊決屋析陶催搖啥瘤跟別熄密抱乒吊摧6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/20229堆棧操作膏絳畫(huà)警柱鴕寨腿打墨鉀絨證資崩躊決屋析陶催搖啥瘤跟別分類(lèi)

指令

說(shuō)明

無(wú)條件分支轉(zhuǎn)移

B[D]用該指令指定的地址加載PCBACC[D]用累加器的低16位指定的地址加載PC條件分支轉(zhuǎn)移

BC[D]若滿(mǎn)足指令給定條件,用該指令指定的地址加載PCBANG[D]若當(dāng)前選擇輔助寄存器不等于0,用該指令指定的地址加載PC遠(yuǎn)程分支轉(zhuǎn)移

FB[D]用該指令指定的地址加載PC和XPCFBACC[D]用累加器的低23位指定的地址加載PC和XPC控制程序淫釘開(kāi)蝕耳敗挖頒醛龔擠盎拉輕咎萊哦垛財(cái)默豁?yè)p柴隕詫圣勝桔陣裙獰意6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202210分類(lèi)指令說(shuō)明無(wú)條件B[D]分類(lèi)指令說(shuō)明無(wú)條件調(diào)用

CALL[D]將返回的地址壓入堆棧,并用該指令指定的地址加載PC

CALA[D]將返回的地址壓入堆棧,用累加器A或B指定的地址加載PC條件調(diào)用

CC[D]

如果滿(mǎn)足指令給定條件,將返回的地址壓入堆棧,并用該指令指定的地址加載PC遠(yuǎn)程調(diào)用

FCALL[D]將XPC和PC壓入堆棧,并用該指令指定的地址加載PC和XPC

FCALA[D]將XPC和PC壓入堆棧,用累加器的低23位指定的地址加載PC和XPC分支操作彭承驢蝕謙舷暖鋼拱裳心判右尾細(xì)染幀幾紋皺匪掄桂抽勝繃攪盈蛔薩仆攬6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202211分類(lèi)指令說(shuō)明無(wú)條件調(diào)用CA分類(lèi)

指令

說(shuō)明

無(wú)條件返回

RET[D]將堆棧頂部的返回地址加載到PC。RETE[D]

將堆棧頂部的返回地址加載到PC,并使能可屏蔽中斷。RETF[D]

將RTN寄存器中的返回地址加載到PC,并使能可屏蔽中斷。條件返回

RC[D]如果滿(mǎn)足指令給定條件,將堆棧頂部的返回地址加載到PC。遠(yuǎn)程返回

FCALL[D]將堆棧頂部的值彈出加載到XPC,將堆棧中下一個(gè)值彈出加載到PC。

FCALA[D]將堆棧頂部的值彈出加載到XPC,將堆棧中下一個(gè)值彈出加載到PC,并使能可屏蔽中斷。分支操作夢(mèng)龐腰酗扶鉸札亥籠噴夠眾瘡直悉躲杯查莢蔗覆凳壩菇秸秘者創(chuàng)鑷?yán)廑櫛?匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202212分類(lèi)指令說(shuō)明無(wú)條件返回R操作符號(hào)條件說(shuō)明操作符號(hào)條件說(shuō)明AEQA=0累加器A等于0AOVAOV=1累加器A溢出BEQB=0累加器B等于0BOVBOV=1累加器B溢出ANEQA0累加器A不等于0ANOVAOV=0累加器A不溢出BNEQB0累加器B不等于0BNOVBOV=0累加器B不溢出ALTA<0累加器A小于0CC=1ALU進(jìn)位位置1BLTB<0累加器B小于0NCC=0ALU進(jìn)位位置0ALEQA0累加器A小于等于0TCTC=1測(cè)試/控制標(biāo)志位置1BLEQB0累加器B小于等于0NTCTC=0測(cè)試/控制標(biāo)志位置0AGTA>0累加器A大于0BIOBIO低BIO信號(hào)電平為低BGTB>0累加器B大于0NBIOBIO高BIO信號(hào)電平為高AGEQA0累加器A大于等于0UNC無(wú)無(wú)條件操作BGEQB0累加器B大于等于0分支操作蛙緘暈王拆扭狄茸臟訊胖蚊癟耗刀素諜四柑匡胸農(nóng)撣昌鹼峽項(xiàng)缺寅庭姑晤6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202213操作符號(hào)條件說(shuō)明操作符號(hào)條件說(shuō)明AEQA循環(huán)操作 .title "Ex534.asm" .mmregsstack .usect "STACK",10h .bss x,10 .bss y, 1table: .word 1,2,3,4,5,6,7,8,9,10 .def startstart: STM #0,SWWSR STM #stack+10h,SP CALL init STM #x,AR1 STM #9,AR2 LD #0, Aloop: ADD *AR1+,A BANZ loop,*AR2- STL A,@y B $init: STM #x,AR1 RPT #9 MVPD table,*AR1+ RET .end兒盈訊舅弧利編果蝦布侶峽狙墓湯人秀詹拂訂驢標(biāo)擂擋剃蝴紀(jì)眷抵暇太旺6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202214循環(huán)操作 .title "Ex534.asm"兒盈訊舅弧利算術(shù)運(yùn)算程序葵悼庭向貸循饑糟烤霹草盜漿壁達(dá)苛簽克捻吝啄蚜啥矛嫂掌旗隅徐棕裝位6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202215算術(shù)運(yùn)算程序葵悼庭向貸循饑糟烤霹草盜漿壁達(dá)苛簽克捻吝啄蚜啥矛加法/減法指定堆??臻g為變量預(yù)留空間初值序列初始化變量設(shè)置堆棧指針利用MAC和RPT求乘累加和峭哦商分芋鍺須雙慎鄭渣詳杠射蓄薯燒偽爍貌悅擬汛眨大吱稿口髓啊淹挺6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202216加法/減法指定堆棧空間為變量預(yù)留空間初值序列初始化變量設(shè)置堆算術(shù)運(yùn)算腑狽毖療陵從簍鍘粟鰓沿趨礬瞞雇繳忍娩垛漬磷繕瑞鈍癬蕉譯崗奴摻斃爾6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202217算術(shù)運(yùn)算腑狽毖療陵從簍鍘粟鰓沿趨礬瞞雇繳忍娩垛漬磷繕瑞鈍癬蕉玲札塹妖娶暮職劑嘴車(chē)但祁后鼎瑟霹類(lèi)昨員辟妨銳基誓箱映歷鋅椽彎標(biāo)揭6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202218玲札塹妖娶暮職劑嘴車(chē)但祁后鼎瑟霹類(lèi)昨員辟妨銳基誓箱映歷鋅椽彎重復(fù)操作程序掄一鍍理邢膘匿啪胳瑚噶潘亦項(xiàng)輛破皚垮撐鈣績(jī)?cè)E浴星迫母娜棘鼻老蓉啃6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202219重復(fù)操作程序掄一鍍理邢膘匿啪胳瑚噶潘亦項(xiàng)輛破皚垮撐鈣績(jī)?cè)E浴星塊重復(fù)操作哲腥誡詭球拳棕篷遺海薪幼喂踢咒箱蓑墜鈣查糞獸脅登誘紗鉸塑味獅癡殷6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202220塊重復(fù)操作哲腥誡詭球拳棕篷遺海薪幼喂踢咒箱蓑墜鈣查糞獸脅登誘數(shù)據(jù)塊傳送程序蟬蓮篩侍嘉循識(shí)巫唇先池苛妨劈威僳殃泅危誣員羽惱紫簍蛛鮮銜抹占提炭6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202221數(shù)據(jù)塊傳送程序蟬蓮篩侍嘉循識(shí)巫唇先池苛妨劈威僳殃泅危誣員羽惱數(shù)據(jù)塊傳送程序?qū)懞?jiǎn)神些暖孽擻雄盡倪濱雅轉(zhuǎn)苦懲緣輪本公淤后痕賊宵壕珍鼎禍訣右顱爪6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202222數(shù)據(jù)塊傳送程序?qū)懞?jiǎn)神些暖孽擻雄盡倪濱雅轉(zhuǎn)苦懲緣輪本公淤后痕賊小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法基于2的補(bǔ)碼形式;數(shù)的定標(biāo)有Q法和S法;C54X為16位:1位符號(hào)位,Q個(gè)小數(shù)位和15-Q個(gè)整數(shù)位。16位定點(diǎn)Q法和S法的表數(shù)范圍Q法S法表數(shù)范圍Q15S0.15-1≤x≤0.9999695Q14S1.14-2≤x≤1.9999390Q13S2.13-4≤x≤3.9998779Q12S3.12-8≤x≤7.9997559Q11S4.11-16≤x≤15.9995117Q10S5.10-32≤x≤31.9990124Q9S6.9-64≤x≤63.9980469Q8S7.8-128≤x≤127.9960938Q7S8.7-256≤x≤255.9921875Q6S9.6-512≤x≤511.984375Q5S10.5-1024≤x≤1023.96875Q4S11.4-2048≤x≤2047.9375Q3S12.3-4096≤x≤4095.875Q2S13.2-8192≤x≤8191.75Q1S14.1-16384≤x≤16383.5Q0S15.0-32768≤x≤32767饅風(fēng)荒護(hù)聘稼奧湖緒東晌酞葛牡層而嘶翹駱?lè)鯎频∈袎K陀叉俘俯氖舀醉6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202223小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法16位定點(diǎn)Q法和S法的表數(shù)小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法基于2的補(bǔ)碼形式;數(shù)的定標(biāo)有Q法和S法;C54X為16位:1位符號(hào)位,Q個(gè)小數(shù)位和15-Q個(gè)整數(shù)位。十進(jìn)制小數(shù)的2的補(bǔ)碼表示正數(shù):乘以32768;負(fù)數(shù):絕對(duì)值乘32768,再取反加1。0.5乘以327684000H-0.54000H乘以32768絕對(duì)值部分-18000H乘以32768絕對(duì)值部分C000H取反加18000H取反加1嘎衰喳垂歡本些鴛蛛戴貿(mào)抽榔慨莢勃徐青截偶俘脾酥汕罷圭謗芒瑚裳泣真6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202224小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法0.5乘以32768400小數(shù)乘法設(shè)字長(zhǎng)為4位(累加器為8位),有如下小數(shù)乘法: 0.625×-0.12501011000×(0.625)(-0.125)0000000000001101(-0101)1101000(-0.078125)乘積結(jié)果為7位,送入累加器;為保持乘積的符號(hào)不變,必須進(jìn)行符號(hào)位擴(kuò)展;因而,經(jīng)過(guò)符號(hào)擴(kuò)展后累加器內(nèi)容為8位:

11101000 (-0.1865)出現(xiàn)了冗余的符號(hào)位(兩個(gè)符號(hào)位)!怎么辦?ST1的FRCT小數(shù)方式控制位,可以控制乘積結(jié)果在送往累加器前是否自動(dòng)左移1位!如FRCT=1,則可自動(dòng)消去兩個(gè)符號(hào)位中冗余的一個(gè)。11101000符號(hào)位擴(kuò)展FRCT=1時(shí)110100000.078125襯鑿詳濃凸稅介訓(xùn)發(fā)鴉舟欲遲鼓告崩眉殷廚唾哼須保傷航桂廣鈾銘炔女隱6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202225小數(shù)乘法01011000×(0.625)(-0.125)00【例5.7.1】求,數(shù)據(jù)全為小數(shù)a1=0.3,a2=0.2,a3=-0.4,a4=0.1x1=0.6,x2=0.5,x3=-0.1,x4=-0.2分析存儲(chǔ)空間要求?采用何種指令?小數(shù)如何表示?冗余符號(hào)位的消去:需預(yù)留9個(gè)存儲(chǔ)單元;典型的乘-累加運(yùn)算:MAC與RPT指令結(jié)合0.3=3*32768/10SSBX FRCT拂蘑母吐侯托掃籌吸電技綢頰廊鄭檀表宴糙蚤羊某羹砍徐唾巡餾艷貼丫藍(lán)6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202226【例5.7.1】求,數(shù)據(jù)全為小數(shù)拂蘑母實(shí)現(xiàn)源代碼 .title

"Ex_571.asm" .mmregsstack .usect

"STACK",10H .bss

a,4 .bss

x,4 .bss

y,1 .def

start .datatable: .word

3*32768/10,2*32768/10,-4*32768/10,1*32768/10 .word

6*32768/10,5*32768/10,-1*32768/10,-2*32768/10 .textstart:

SSBX FRCT STM #a,AR1 RPT #7 MVPD table,*AR1+ STM #a,AR3 STM #x,AR4 RPTZ A,#3

MAC *AR3+,*AR4+,A

;只能最多用到AR5,教材代碼有誤

STH A,@ydone: B done .end從罵沽委擦帳蕭示返鉗畫(huà)抉窺鄖扎昭潞赤惱瘴必南糊鋤啄污談?wù)诹剂霉?匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202227實(shí)現(xiàn)源代碼 .title"Ex_571.asm"從罵沽浮點(diǎn)運(yùn)算浮點(diǎn)數(shù)的表示包含尾數(shù)和指數(shù)兩部分如:定點(diǎn)數(shù)0x2000(0.25)用浮點(diǎn)數(shù)表示時(shí),尾數(shù)為0x4000(0.5),指數(shù)為1,即0.5×2-1;尾數(shù)和指數(shù)都可正可負(fù):尾數(shù)符號(hào)表示浮點(diǎn)數(shù)的正負(fù),指數(shù)的符號(hào)表示浮點(diǎn)數(shù)的絕對(duì)值大小。定點(diǎn)數(shù)轉(zhuǎn)換成浮點(diǎn)數(shù)Step1:EXPAStep2:STT,EXPONENTStep3:NORMA定點(diǎn)數(shù)=尾數(shù)×2-指數(shù)狼紫淆憲含瘁銳喬飲佬肪寫(xiě)漿閩崔策角綢爸盯拳矩倒揪阿鐐宙元辱糞皿內(nèi)6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202228浮點(diǎn)運(yùn)算浮點(diǎn)數(shù)的表示定點(diǎn)數(shù)=尾數(shù)×2-指數(shù)狼紫淆憲含瘁銳喬飲浮點(diǎn)運(yùn)算浮點(diǎn)數(shù)轉(zhuǎn)換為定點(diǎn)數(shù)將尾數(shù)按指數(shù)值進(jìn)行左移(指數(shù)為負(fù))或右移(指數(shù)為正)浮點(diǎn)運(yùn)算舉例編寫(xiě)浮點(diǎn)運(yùn)算程序,完成x1*x2=0.4*(-0.9)。分析:首先確定需要分配的存儲(chǔ)單元確定需要用到的關(guān)鍵指令流程圖菜匠湘蘭信鴛值廠捅營(yíng)缸藤謬悍疚佩孺尼員嘔拳手瘍的爽站啄課頑屜冒鑰6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202229浮點(diǎn)運(yùn)算浮點(diǎn)數(shù)轉(zhuǎn)換為定點(diǎn)數(shù)菜匠湘蘭信鴛值廠捅營(yíng)缸藤謬悍疚佩孺浮點(diǎn)運(yùn)算實(shí)現(xiàn)代碼 .title

"Ex_581.asm" .mmregsstack .usect

"STACK",100H .bss

a,2 .bss

b,2 .bss

c,2 .bss

ep,1 .bss

mp,1 .bss

product,1 .bss

temp,1 .def

start .datatable: .word

4*32768/10,-9*32768/10 .textstart: STM #stack+100,SP MVPD table,@a MVPD table+1,@a+1 LD @a,16,A EXP A ST T,@b NORM A STH A,@c LD @a+1,16,A EXP A ST T,@b+1 NORM A STH A,@c+1 CALL MULTdone: B doneMULT: SSBX FRCT SSBX SXM LD @b,A ADD @b+1,A STL A,@ep LD @c,T MPY @c+1,A EXP A ST T,@temp NORM A STH A,@mp LD @temp,A ADD @ep,A STL A,@ep NEG A STL A,@temp LD @temp,T LD @mp,16,A NORM A STH A,@product RET .end冶煉伺噸哨茅原屋殷鷗哦偷餞瞻絡(luò)纖噶踢麗私致誓越期爪遮揉誣煉輿慢大6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202230浮點(diǎn)運(yùn)算實(shí)現(xiàn)代碼 .title"Ex_581.asm" 本章小結(jié)匯編語(yǔ)言程序格式常數(shù)與字符串、標(biāo)號(hào)匯編語(yǔ)言表達(dá)式常用程序結(jié)構(gòu)算術(shù)運(yùn)算嘯又倆國(guó)犯懷琶譏驢菲斜延屁貢雹腰弘乞俐孵妖爛孔敞疹翻秀草噶傲姚員6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202231本章小結(jié)嘯又倆國(guó)犯懷琶譏驢菲斜延屁貢雹腰弘乞俐孵妖爛孔敞疹翻第六章匯編語(yǔ)言程序設(shè)計(jì)主講:胡文靜博士魏皇繹蛇者瘍頃萎繹宜丟壘式可鞋鉻曙哪翌痕翟觸窟錳恒娩分絨臆險(xiǎn)麓秧6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》第六章匯編語(yǔ)言程序設(shè)計(jì)主講:胡文靜博士魏皇繹蛇者瘍頃萎繹概述匯編語(yǔ)言源程序格式:助記符指令一般包含4個(gè)部分,其一般組成形式為:[標(biāo)號(hào)][:]助記符[操作數(shù)][;注釋]書(shū)寫(xiě)格式規(guī)則詳見(jiàn)P138,①②③④⑤⑥!標(biāo)號(hào)—所有匯編指令和大多數(shù)匯編偽指令前面都可以帶有標(biāo)號(hào);必須從第一列開(kāi)始書(shū)寫(xiě);最多32個(gè)字符;由字母、數(shù)字、下劃線和$組成,且不能以數(shù)字開(kāi)頭;分大小寫(xiě);冒號(hào)不屬于標(biāo)號(hào)名;沒(méi)有標(biāo)號(hào)的源語(yǔ)句第一列必須為空格、星號(hào)或分號(hào)。助記符—不能從第一列開(kāi)始,否則被認(rèn)為是標(biāo)號(hào);指令助記符一般用大寫(xiě);匯編偽指令一般為小寫(xiě),且以“.”開(kāi)頭。操作數(shù)—操作數(shù)列表,可以是常數(shù)、符號(hào)或常數(shù)與符號(hào)構(gòu)成的表達(dá)式。操作數(shù)間需用“,”號(hào)隔開(kāi);三種前綴形式:#,*,@。瀾砧猩賞禱騎吞疊樁鉤雁對(duì)亡失纂遍哺吱煽合蜂紫檔隅浮俱袖解燈磅握媒6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202233概述匯編語(yǔ)言源程序格式:瀾砧猩賞禱騎吞疊樁鉤雁對(duì)亡失纂遍哺吱數(shù)據(jù)類(lèi)型舉例二進(jìn)制10011000B,01111010b(最多16位)八進(jìn)制226q,1001Q,0124(多達(dá)6位)十進(jìn)制略十六進(jìn)制0DH,123H,0X89,0x0D(多達(dá)4位)浮點(diǎn)數(shù)1.786e9(浮點(diǎn)數(shù)僅在C語(yǔ)言使用)字符常數(shù)‘a(chǎn)’,’b’…字符串“example”常數(shù)與字符串嗡肺寒廁冗戍蝶對(duì)恨賤屁靴佐毖蒲木諺生蹄拒疵籍騰庸件嬰髓苦犬木叢暢6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202234數(shù)據(jù)類(lèi)型舉例二進(jìn)制10011000B,01111010b(最類(lèi)型含義標(biāo)號(hào)符號(hào)地址(可作為.global,.ref,.def的操作數(shù))局部標(biāo)號(hào)$n,name?(臨時(shí)性的標(biāo)號(hào),.newblock,.sect,.text,.data,.include,.copy取消)符號(hào)常數(shù).set,.struct/.tag/.endstruct(提高可讀性)預(yù)定義符號(hào)常數(shù)$,寄存器符號(hào),其他…替代符號(hào)符號(hào)替代變量,.asg“high”,AR2(可重新定義)標(biāo)號(hào)盜疵匠顏會(huì)汛吾矯查剛賞掃葵階袱旁憾懊難摘犢威園贈(zèng)挾豪接邏蹋琢腋礁6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202235類(lèi)型含義標(biāo)號(hào)符號(hào)地址(可作為.global,.ref,.de舉例督沼他矣勛烤哇兜迸圍喜稿俠晌胖棍滋掩改吼誨畝淡摘議紀(jì)煤命車(chē)瘟寄昂6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202236舉例督沼他矣勛烤哇兜迸圍喜稿俠晌胖棍滋掩改吼誨畝淡摘議紀(jì)煤命序號(hào)符號(hào)運(yùn)算操作求值順序1+-~!取正、取負(fù)、按位求補(bǔ)、邏輯負(fù)從右至左2*/%乘法、除法、求模從左至右3+-加法、減法從左至右4^指數(shù)從左到右5<<>>左移、右移從左至右6<<=小于、小于等于從左至右7>>=大于、大于等于從左至右8!==不等于、等于從左至右9&按位與運(yùn)算從左至右10∧

按位異或運(yùn)算從左至右11|按位或運(yùn)算從左至右匯編語(yǔ)言表達(dá)式彝椒顯總調(diào)夕它禽澇辱硅零綁摹灑碰潭具鑲季屋街萌猾色臻胃矮避個(gè)炳泊6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202237序號(hào)符號(hào)運(yùn)算操作求值順序1+-~!取正、取負(fù)、按有效定義表達(dá)式:礦剿灑意咕字莉肛喬拘卒短父砂悶婚黔汾愁娩悍攀喝吮累價(jià)稍管腆鼓燴革6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202238有效定義表達(dá)式:礦剿灑意咕字莉肛喬拘卒短父砂悶婚黔汾愁娩悍攀有效定義表達(dá)式貝盎粟拈暫規(guī)搞逢撲婉侈單雜映乾林般捆狼渺湊聽(tīng)嘉愧頌酗彰文闡慨嘆馮6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202239有效定義表達(dá)式貝盎粟拈暫規(guī)搞逢撲婉侈單雜映乾林般捆狼渺湊聽(tīng)嘉堆棧操作膏絳畫(huà)警柱鴕寨腿打墨鉀絨證資崩躊決屋析陶催搖啥瘤跟別熄密抱乒吊摧6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202240堆棧操作膏絳畫(huà)警柱鴕寨腿打墨鉀絨證資崩躊決屋析陶催搖啥瘤跟別分類(lèi)

指令

說(shuō)明

無(wú)條件分支轉(zhuǎn)移

B[D]用該指令指定的地址加載PCBACC[D]用累加器的低16位指定的地址加載PC條件分支轉(zhuǎn)移

BC[D]若滿(mǎn)足指令給定條件,用該指令指定的地址加載PCBANG[D]若當(dāng)前選擇輔助寄存器不等于0,用該指令指定的地址加載PC遠(yuǎn)程分支轉(zhuǎn)移

FB[D]用該指令指定的地址加載PC和XPCFBACC[D]用累加器的低23位指定的地址加載PC和XPC控制程序淫釘開(kāi)蝕耳敗挖頒醛龔擠盎拉輕咎萊哦垛財(cái)默豁?yè)p柴隕詫圣勝桔陣裙獰意6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202241分類(lèi)指令說(shuō)明無(wú)條件B[D]分類(lèi)指令說(shuō)明無(wú)條件調(diào)用

CALL[D]將返回的地址壓入堆棧,并用該指令指定的地址加載PC

CALA[D]將返回的地址壓入堆棧,用累加器A或B指定的地址加載PC條件調(diào)用

CC[D]

如果滿(mǎn)足指令給定條件,將返回的地址壓入堆棧,并用該指令指定的地址加載PC遠(yuǎn)程調(diào)用

FCALL[D]將XPC和PC壓入堆棧,并用該指令指定的地址加載PC和XPC

FCALA[D]將XPC和PC壓入堆棧,用累加器的低23位指定的地址加載PC和XPC分支操作彭承驢蝕謙舷暖鋼拱裳心判右尾細(xì)染幀幾紋皺匪掄桂抽勝繃攪盈蛔薩仆攬6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202242分類(lèi)指令說(shuō)明無(wú)條件調(diào)用CA分類(lèi)

指令

說(shuō)明

無(wú)條件返回

RET[D]將堆棧頂部的返回地址加載到PC。RETE[D]

將堆棧頂部的返回地址加載到PC,并使能可屏蔽中斷。RETF[D]

將RTN寄存器中的返回地址加載到PC,并使能可屏蔽中斷。條件返回

RC[D]如果滿(mǎn)足指令給定條件,將堆棧頂部的返回地址加載到PC。遠(yuǎn)程返回

FCALL[D]將堆棧頂部的值彈出加載到XPC,將堆棧中下一個(gè)值彈出加載到PC。

FCALA[D]將堆棧頂部的值彈出加載到XPC,將堆棧中下一個(gè)值彈出加載到PC,并使能可屏蔽中斷。分支操作夢(mèng)龐腰酗扶鉸札亥籠噴夠眾瘡直悉躲杯查莢蔗覆凳壩菇秸秘者創(chuàng)鑷?yán)廑櫛?匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202243分類(lèi)指令說(shuō)明無(wú)條件返回R操作符號(hào)條件說(shuō)明操作符號(hào)條件說(shuō)明AEQA=0累加器A等于0AOVAOV=1累加器A溢出BEQB=0累加器B等于0BOVBOV=1累加器B溢出ANEQA0累加器A不等于0ANOVAOV=0累加器A不溢出BNEQB0累加器B不等于0BNOVBOV=0累加器B不溢出ALTA<0累加器A小于0CC=1ALU進(jìn)位位置1BLTB<0累加器B小于0NCC=0ALU進(jìn)位位置0ALEQA0累加器A小于等于0TCTC=1測(cè)試/控制標(biāo)志位置1BLEQB0累加器B小于等于0NTCTC=0測(cè)試/控制標(biāo)志位置0AGTA>0累加器A大于0BIOBIO低BIO信號(hào)電平為低BGTB>0累加器B大于0NBIOBIO高BIO信號(hào)電平為高AGEQA0累加器A大于等于0UNC無(wú)無(wú)條件操作BGEQB0累加器B大于等于0分支操作蛙緘暈王拆扭狄茸臟訊胖蚊癟耗刀素諜四柑匡胸農(nóng)撣昌鹼峽項(xiàng)缺寅庭姑晤6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202244操作符號(hào)條件說(shuō)明操作符號(hào)條件說(shuō)明AEQA循環(huán)操作 .title "Ex534.asm" .mmregsstack .usect "STACK",10h .bss x,10 .bss y, 1table: .word 1,2,3,4,5,6,7,8,9,10 .def startstart: STM #0,SWWSR STM #stack+10h,SP CALL init STM #x,AR1 STM #9,AR2 LD #0, Aloop: ADD *AR1+,A BANZ loop,*AR2- STL A,@y B $init: STM #x,AR1 RPT #9 MVPD table,*AR1+ RET .end兒盈訊舅弧利編果蝦布侶峽狙墓湯人秀詹拂訂驢標(biāo)擂擋剃蝴紀(jì)眷抵暇太旺6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202245循環(huán)操作 .title "Ex534.asm"兒盈訊舅弧利算術(shù)運(yùn)算程序葵悼庭向貸循饑糟烤霹草盜漿壁達(dá)苛簽克捻吝啄蚜啥矛嫂掌旗隅徐棕裝位6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202246算術(shù)運(yùn)算程序葵悼庭向貸循饑糟烤霹草盜漿壁達(dá)苛簽克捻吝啄蚜啥矛加法/減法指定堆棧空間為變量預(yù)留空間初值序列初始化變量設(shè)置堆棧指針利用MAC和RPT求乘累加和峭哦商分芋鍺須雙慎鄭渣詳杠射蓄薯燒偽爍貌悅擬汛眨大吱稿口髓啊淹挺6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202247加法/減法指定堆??臻g為變量預(yù)留空間初值序列初始化變量設(shè)置堆算術(shù)運(yùn)算腑狽毖療陵從簍鍘粟鰓沿趨礬瞞雇繳忍娩垛漬磷繕瑞鈍癬蕉譯崗奴摻斃爾6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202248算術(shù)運(yùn)算腑狽毖療陵從簍鍘粟鰓沿趨礬瞞雇繳忍娩垛漬磷繕瑞鈍癬蕉玲札塹妖娶暮職劑嘴車(chē)但祁后鼎瑟霹類(lèi)昨員辟妨銳基誓箱映歷鋅椽彎標(biāo)揭6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202249玲札塹妖娶暮職劑嘴車(chē)但祁后鼎瑟霹類(lèi)昨員辟妨銳基誓箱映歷鋅椽彎重復(fù)操作程序掄一鍍理邢膘匿啪胳瑚噶潘亦項(xiàng)輛破皚垮撐鈣績(jī)?cè)E浴星迫母娜棘鼻老蓉啃6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202250重復(fù)操作程序掄一鍍理邢膘匿啪胳瑚噶潘亦項(xiàng)輛破皚垮撐鈣績(jī)?cè)E浴星塊重復(fù)操作哲腥誡詭球拳棕篷遺海薪幼喂踢咒箱蓑墜鈣查糞獸脅登誘紗鉸塑味獅癡殷6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202251塊重復(fù)操作哲腥誡詭球拳棕篷遺海薪幼喂踢咒箱蓑墜鈣查糞獸脅登誘數(shù)據(jù)塊傳送程序蟬蓮篩侍嘉循識(shí)巫唇先池苛妨劈威僳殃泅危誣員羽惱紫簍蛛鮮銜抹占提炭6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202252數(shù)據(jù)塊傳送程序蟬蓮篩侍嘉循識(shí)巫唇先池苛妨劈威僳殃泅危誣員羽惱數(shù)據(jù)塊傳送程序?qū)懞?jiǎn)神些暖孽擻雄盡倪濱雅轉(zhuǎn)苦懲緣輪本公淤后痕賊宵壕珍鼎禍訣右顱爪6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202253數(shù)據(jù)塊傳送程序?qū)懞?jiǎn)神些暖孽擻雄盡倪濱雅轉(zhuǎn)苦懲緣輪本公淤后痕賊小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法基于2的補(bǔ)碼形式;數(shù)的定標(biāo)有Q法和S法;C54X為16位:1位符號(hào)位,Q個(gè)小數(shù)位和15-Q個(gè)整數(shù)位。16位定點(diǎn)Q法和S法的表數(shù)范圍Q法S法表數(shù)范圍Q15S0.15-1≤x≤0.9999695Q14S1.14-2≤x≤1.9999390Q13S2.13-4≤x≤3.9998779Q12S3.12-8≤x≤7.9997559Q11S4.11-16≤x≤15.9995117Q10S5.10-32≤x≤31.9990124Q9S6.9-64≤x≤63.9980469Q8S7.8-128≤x≤127.9960938Q7S8.7-256≤x≤255.9921875Q6S9.6-512≤x≤511.984375Q5S10.5-1024≤x≤1023.96875Q4S11.4-2048≤x≤2047.9375Q3S12.3-4096≤x≤4095.875Q2S13.2-8192≤x≤8191.75Q1S14.1-16384≤x≤16383.5Q0S15.0-32768≤x≤32767饅風(fēng)荒護(hù)聘稼奧湖緒東晌酞葛牡層而嘶翹駱?lè)鯎频∈袎K陀叉俘俯氖舀醉6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202254小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法16位定點(diǎn)Q法和S法的表數(shù)小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法基于2的補(bǔ)碼形式;數(shù)的定標(biāo)有Q法和S法;C54X為16位:1位符號(hào)位,Q個(gè)小數(shù)位和15-Q個(gè)整數(shù)位。十進(jìn)制小數(shù)的2的補(bǔ)碼表示正數(shù):乘以32768;負(fù)數(shù):絕對(duì)值乘32768,再取反加1。0.5乘以327684000H-0.54000H乘以32768絕對(duì)值部分-18000H乘以32768絕對(duì)值部分C000H取反加18000H取反加1嘎衰喳垂歡本些鴛蛛戴貿(mào)抽榔慨莢勃徐青截偶俘脾酥汕罷圭謗芒瑚裳泣真6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202255小數(shù)運(yùn)算程序定點(diǎn)DSP的小數(shù)表示法0.5乘以32768400小數(shù)乘法設(shè)字長(zhǎng)為4位(累加器為8位),有如下小數(shù)乘法: 0.625×-0.12501011000×(0.625)(-0.125)0000000000001101(-0101)1101000(-0.078125)乘積結(jié)果為7位,送入累加器;為保持乘積的符號(hào)不變,必須進(jìn)行符號(hào)位擴(kuò)展;因而,經(jīng)過(guò)符號(hào)擴(kuò)展后累加器內(nèi)容為8位:

11101000 (-0.1865)出現(xiàn)了冗余的符號(hào)位(兩個(gè)符號(hào)位)!怎么辦?ST1的FRCT小數(shù)方式控制位,可以控制乘積結(jié)果在送往累加器前是否自動(dòng)左移1位!如FRCT=1,則可自動(dòng)消去兩個(gè)符號(hào)位中冗余的一個(gè)。11101000符號(hào)位擴(kuò)展FRCT=1時(shí)110100000.078125襯鑿詳濃凸稅介訓(xùn)發(fā)鴉舟欲遲鼓告崩眉殷廚唾哼須保傷航桂廣鈾銘炔女隱6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202256小數(shù)乘法01011000×(0.625)(-0.125)00【例5.7.1】求,數(shù)據(jù)全為小數(shù)a1=0.3,a2=0.2,a3=-0.4,a4=0.1x1=0.6,x2=0.5,x3=-0.1,x4=-0.2分析存儲(chǔ)空間要求?采用何種指令?小數(shù)如何表示?冗余符號(hào)位的消去:需預(yù)留9個(gè)存儲(chǔ)單元;典型的乘-累加運(yùn)算:MAC與RPT指令結(jié)合0.3=3*32768/10SSBX FRCT拂蘑母吐侯托掃籌吸電技綢頰廊鄭檀表宴糙蚤羊某羹砍徐唾巡餾艷貼丫藍(lán)6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》6匯編語(yǔ)言程序設(shè)計(jì)《TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用》12/30/202257【例5.7.1】求,數(shù)據(jù)全為小數(shù)拂蘑母實(shí)現(xiàn)源代碼 .title

"Ex_571.asm" .mmregsstack .usect

"STACK",10H .bss

a,4 .bss

x,4 .bss

y,1 .def

start .datatable: .word

3*32768/10,2*32768/10,-4*32768/10,1*32768/10 .word

6*32768/10,5*32768/10,-1*32768/10,-2*32768/10

溫馨提示

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

評(píng)論

0/150

提交評(píng)論