云南民族大学期末DSP技术A答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
STL B, TEMP3;TEMP3=TEMP1/TEMP2的商
STH B, TEMP4;TEMP4=TEMP1/TEMP2的余数
4.在以下指令中
BC new,AGT,AOV
AGT表示A>0的条件和AOV表示A溢出的条件,若把这个条件改为或的关系,应把以上指改为以下两条指令:
BC new,AGT
BC new,AOV
STL A, @y——1分
STH A, @y+1——1分
RET
.end
2.改编程序,用长字运算的方式来实现以上功能。(18分)
答:
.title"zh17.asm"
.mmregs
STACK.usect"STACK",10H
.bssxhi,2,1,1——2分
.bssyhi,2,1,1——2分
.bsszhi,2,1,1——2分
1)汇编器有哪些伪指令支持该功能?
2)其中,哪些指令可建立未初始化段,哪些指令可建立初始化段?
3)初始化段和未初始化段有什么区别?
4)哪些指令可建立命名段?(4分)
答:1)——1分
.bss
,usec
.text
.data
.sect
2)——1分
.bss未初始化段
,usec未初始化段
.text已初始化段
.data已初始化段
.mmregs
STACK.usect "STACK",10H
.bssx,2——1分
.bssa,2——1分
.bssy,1
.defstart
.data
table:.word3, 5
.word15, 20
.text
start:STM #0, SWWSR
STM #STACK+10H, SP
STM #a, AR1
.vectors段放在VECS空间中,VECS配置在程序存储器(PAGE 0)中,它的起始地址为0ff80H,长度为04H。——1分
四、编程题(共33分)
1.改编程序,用循环的方式来实现y=x1*a1+x2*a2,要求:
1)用BANZ指令来完成;
2)循环计数器设置为1。(15分)
答:
.title "exercise9.asm"
分别是
.text段,
.data段,有8个数据
.bss段,保留了9个存储空间——2分
2.请分析回答:
1)链接器对哪几个段进行了处理?
答:.text段——1分
.data段——1分
.bss段——1分
STACK段——1分
.vectors段——1分
2)这些段在存储器空间中是怎样分配的?
答:.text段放在EPROM空间中,EPROM配置在程序存储器(PAGE 0)中,它的起始地址为0E000H,长度为0100H。——1分
.sect已初始化段
3)——1分
未初始化段:在目标存储器中保留空间,以供程序运行过程中的变量作为临时存储空间使用。
已初始化段:段中的内容都在目标文件中,当加载出西施就放到目标存储器中。
4)——1分
命名段:
.usect
.sect
二、填空题 (每空2分,共32分)
1.阅读以下指令,完成注释中的填空:
LD TEMP1,A;执行完该指令后A=TEMP1
三、程序分析题(每小题10分,共20分)
1.1)程序执行至“MVPD table,*AR1+”后,从地址为a开始的8个存储单元中的内容分别是什么?AR1中的内容又是什么?
答:a开始的8个存储单元中的内容分别是1,2,3,4,8,6,4,2。——2分
AR1中的内容为#a+7。——2分
2)程序执行至“RPTZ A, #3”后ห้องสมุดไป่ตู้A中的内容是什么?
ADD TEMP2,A;执行完该指令后A=TEMP1+TEMP2
STL A,TEMP3;执行完该指令后TEMP3=TEMP1+TEMP2
2.阅读以下指令,完成注释中的填空:
STM #60H, A;该指令的寻址方式为立即数寻址,执行完该指令后AR3指向地址
;为60H的存储器映射寄存器。
STM #61H, AR2
云南民族大学电气信息工程学院
试卷参考答案及评分标准
20--20学年学期课程名称:DSP技术试卷编号:A
考试年级专业:命题教师签名:
一、简答题(共15分)
1.什么是RAM和ROM寄存器?它们在DSP中有何作用?它们的区别是什么?(6分)
答:RAM:随机访问存储器——1分
ROM:只读存储器——1分
作用:
答:A中的内容为0。——2分
3)程序执行至“MAC *AR3+, *AR4+, A”后AR3,AR4和A中的内容分别是什么?
答:分别为#a+3,#x+3和#40。——2分
4)在以上程序中,一共建立了多少个段?分别是哪些段?在以上.data段内有几个数据,.bss在存储器中保留了几个存储单元?
答:共建立了4个段,
STM *AR2+, *AR3, B;执行完该指令后B=地址60H和61H的寄存器中的内容之和,
;AR2指向一个地址为62H的存储器映射寄存器。
STH B, 63H;执行完该指令后63H中的内容为B中高16位的内容。
3.阅读以下指令,完成注释中的填空:
LD TEMP1, B
RPT #15
SUBC TEMP2, B
.defstart
.data
table:.long16782345H,1020D34AH——3分
.text
start:STM#0,SWWSR
STM#STACK+10H,SP
STM#xhi,AR1
RPT#3
MVPDtable,*AR1+
DLD@xhi,A——3分
DADD@yhi,A——3分
DSTA,@zhi——3分
.data段放在EPROM空间中,EPROM配置在程序存储器(PAGE 0)中,它的起始地址为0E000H,长度为0100H。——1分
.bss段放在SPRAMS空间中,SPRAM配置在数据存储器(PAGE 1)中,它的起始地址为0060H,长度为0020H。——1分
STACK段放在DARAM空间中,DARAM配置在数据存储器(PAGE 1)中,它的起始地址为0080H,长度为0100H。——1分
绝对地址寻址:数据存储器地址寻址——1分
4)MVPD TABEL1,*AR2其中TABLE1是pmad值
绝对地址寻址:程序存储器地址寻址——1分
5)LD #x,DP
LD @u,A
ADD @u,A
直接寻址——1分
3.汇编器对段的处理是,通过段伪指令区分出各个段,且将段名相同的语句汇编在一起,每个程序都可以是由几个段结合在一起形成的。请回答:
RPT #3
MVPD table,*AR1+
LD #0, A——1分
CALL SUM
end: B end
SUM:STM #x, AR3——2分
STM #a, AR4——2分
STM #1, AR5——2分
loop: MAC *AR3+, *AR4+, A——2分
BANZ loop, *AR5-——2分
RAM:通常放数据,对应于数据存储器——1分
ROM:通常放程序,对应于程序存储器——1分
区别:
RAM:读写速度快,掉电数据丢失——1分
ROM:读写速度慢,掉电数据不丢失——1分
2.以下指令分别是什么寻址方式?(5分)
1)LD #0F0H,A
立即数寻址——1分
2)LD0F0H,A
绝对地址寻址——1分
3)MVKD DATA1,*AR2其中,DATA1是dmad值
end:Bend
.end
相关文档
最新文档