辽宁大学DSP复习题Word格式文档下载.docx
《辽宁大学DSP复习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《辽宁大学DSP复习题Word格式文档下载.docx(26页珍藏版)》请在冰点文库上搜索。
15~13
12
11
10
9
8~0
ARP
TC
C
OVA
OVB
DP
ARP:
辅助寄存器指针|TC:
测试、控制标志位|C:
进位位|DP:
页指针
ST1主要反映处理器的寻址要求、计算初始状态的设置、I/O中断的控制等;
15
14
13
8
7
6
5
4~0
BRAF
CPL
XF
HM
INTM
OVM
SXM
C16
FRCT
CMPT
ASM
CPL:
页指针编辑方式|INTM:
全局中断屏蔽|ASM:
累加器移位方式
PMST主要设定和控制处理器的工作方式和存储器的配置,反映处理器的工作状态.
15~7
4
3
2
1
IPTR
MP/MC
OVLY
AVIS
DROM
CLKOFFt
SMULt
SSTt
IPTR:
中断矢量页地址|MP/MC:
微处理器/微计算机工作方式位
OVLY:
片内RAM是否映射到程序空间|DROM:
数据ROM位
6.计算
(30H)=50H,AR2=40H,AR3=60H,AR4=80H.
MVKD30H,*AR2;
50H=>
*AR2
MVDD*AR2,*AR3;
*AR3
MVMMAR3,AR4;
60H=>
AR4
运行上述程序后,AR4等于(60H)
已知(80H)=10H,(81H)=30H。
LD
#0,DP;
0=>
80H,16,B;
100000H=>
B
ADD
81H,B;
30H+B=>
运行上述程序后,B等于(100030H)
7.画出当MP/MC=0,OVLY=0,DROM=1时的存储器分别配图(P9)
8.读下面程序,写出运行后y的值(1,2,3,4,5,0,0,0,0)。
.bss
y,9y[9]
table:
.word1,2,3,4,5table[5]={1,2,3,4,5}
STM
#y,AR2y[0]=AR2
RPT
#5下条语句执行5+1=6次
MVPDtable,*AR2+y[0]=1,y[1]=2,y[2]=3,y[3]=4,y[4]=5
LD#0,B0=>
LD#81h,AR581H=>
AR5
STM#0,A0=>
A
STM#4,BRC块重复4+1=5次
STM#y,AR5y[0]=>
RPTBsub-1块末地址为sub-1,开始块重复
ADD*AR5,B,Ay[0]+0=>
A,y[1]+0=>
A,y[2]+0=>
A,y[3]+0=>
A,y[4]+0=>
STL
A,*AR5+A=>
y[0],A=>
y[1],A=>
y[2],A=>
y[3],A=>
y[4]
sub:
LD*0,B0=>
9.C语言程序设计时,C编译器会产生哪些段?
(P74)
初始化段有:
.text:
段包括可执行代码、字符串和编译器产生的常数。
.cinit:
初始化变量和常数表。
.const:
字符串和以const关键字定义的常量。
.switch:
包括switch语句表。
未初始化段有:
.bss:
为全局变量和静态变量保留空间,
在程序启动后,C初始化引导程序将数据从.cinit段复制到.bss段。
.stack:
为C的系统堆栈分配存储空间,用于变量传递及分配局部变量。
.sysmem:
动态分配存储器分配保留空间,为C语言函数malloc、calloc、realloc
动态地分配存储器。
若C程序中未用到这些函数,则C编译器不产生该段
10.按照下面的存储空间分配图,使用memory和section指令编写.cmd文件。
inti,j,k;
for(i=0;
i<
100;
i++)
for(j=0;
j<
2;
j++)
for(k=0;
k<
k++);
k=20;
for(i=0;
k;
for(j=0;
FRAME#-3
SSBXSXM
LD#100,A
ST#0,*SP(0)
SUB*SP(0),A
BCL7,ALEQ
L2:
LD#2,A
ST#0,*SP
(1)
SUB*SP
(1),A
BCL6,ALEQ
L3:
LD#2,A
ST#0,*SP
(2)
SUB*SP
(2),A
BCL5,ALEQ
L4:
ADDM#1,*SP
(2)
BCL4,AGT
L5:
ADDM#1,*SP
(1)
SUB*SP
(1),A
BCL3,AGT
L6:
LD#100,A
ADDM#1,*SP(0)
SUB*SP(0),A
BCL2,AGT
L7:
FRAME#3
RET
NOP
STLA,*SP(0)
LD*SP(0),A
ST#0,*SP
(2)
SUB*SP
(2),A
BCL4,ALEQ
MEMORY
{
PAGE0:
PTEXT:
origin=0x1000,length=0x1000
PDATA:
origin=0x2000,length=0x0100
PAGE1:
DBSS:
origin=0x2000,length=0x80
DX:
origin=0x2080,length=0x280
DSTACK:
origin=0x3000,length=0x1000
}
SECTIONS
{.text>
PTEXTPAGE0
.data>
PDATAPAGE0
.bss>
DBSSPAGE1
.x:
>
DXPAGE1
.stack>
DSTACKPAGE1
}
ST#0,SP
(1)
LDSP(0),A
SUB*SP