全国自考微型计算机原理与接口技术考前密卷02205含答案Word文件下载.docx
- 文档编号:19678350
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:24
- 大小:205.46KB
全国自考微型计算机原理与接口技术考前密卷02205含答案Word文件下载.docx
《全国自考微型计算机原理与接口技术考前密卷02205含答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《全国自考微型计算机原理与接口技术考前密卷02205含答案Word文件下载.docx(24页珍藏版)》请在冰豆网上搜索。
D.‘a’
二、单项选择题(单片机原理与接口技术本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个选项是符合题目要求的,请将其代码填写在题后的括号内。
第1题单片机上电或按手动复位键,都可复位,使PC和大多数特殊功能寄存器(SFR)的初值为零。
但有一个SFR为07H,它是()
A.SP
B.ACC
C.PSW
D.A
第2题MCS?
51单片机有四个并行口,其中()是真正三态口
A.P0
B.P1
C.P3
D.P2
第3题MCS-51系列单片机的下列特殊功能寄存器中,()是堆栈指针寄存器。
A.ACC
B.SP
D.TCON
第4题以下各指令中,不属于MCS-51系列的指令的是()
A.ADDA,Rn
B.ADDRn,#30H
C.ADDCA,30H
D.ADDA,@Ri
第5题SJMP
指令的跳转范围是()
A.-128~+127
B.-127~+128
C.-128~+128
D.0~256
第6题计算机CPU由()构成。
A.运算器和控制器
B.运算器和ROM
C.RAM和定时器
D.控制器和译码器
第7题8031单片机的定时器1的中断程序入口地址为()
A.001BH
B.0003H
C.000BH
D.0013H
第8题F6H是用8位二进制补码表示的十六制数,那么相应的十进制数是()
A.246
B.-10
C.-118
D.-9
第9题执行长调用指令LCALL
addr16,它的操作是()
A.保护断点、保护现场(即所用到的寄存器内容入堆栈)及构成目的地址
B.保护断点和构成目的地址
C.将子程序地址送PC(构成目的地址)
D.将断点地址进栈保存(保护断点)
第10题MCS-51单片机片内RAM中字节地址为0EH的单元,其对应工作寄存器名为()
A.R0
B.R1
C.R6
D.R7
三、填空题(C语言程序设计本大题共4小题,每小题2分,共8分)请在每小题的空格中填上正确答案。
错填、不填均无分。
第1题以下程序段的输出结果是___。
int
x=17,y=26;
printf(“%d”,y/=(x%=6));
【正确答案】(P28)
5
本题分数2分
你的得分
修改分数
第2题以下程序的输出结果是___。
main()
{int
y=9;
for(;
y>
0;
y--)
if(y%3==0)
{printf(“%d”,--y);
continue;
}
}
【正确答案】(P54)
852
第3题___
【正确答案】(P34)((x*y)*(x*y))*((-2*x)*(-2*x)*(-2*x))
第4题设有定义“struct
{int
a;
float
b;
char
c;
}
abc,
*p_abc=&
abc;
”,则对结构体成员a的引用方法可以是abc.a和p_abc___a。
【正确答案】(P85)->
四、改错题(C语言程序设计本大题共4小题,每小题2分,共8分)每小题只有一处错误或不妥,请指出,并将其改正。
第1题有一个一维数组,内放10个学生成绩,下列通过一个函数,在主程序中算出平均分
【正确答案】(P74)
第2题下列程序是让y的值等于19。
y=1,x,*p,a[]={2,4,6,8,10};
p=a[1];
for(x=0;
x<
3;
x++)
y+=*(p+x);
printf(“%d\n”,y);
答:
错误:
改正:
【正确答案】(P81)错误:
p=a[1];
p=&
a[1];
第3题main()
n
;
s=1.0;
for(n=10;
n>
1;
n--)
s=s+1/n;
printf(“%6.1f\n”,s);
【正确答案】(P27)错误:
s=s+1/n;
s=s+1.0/n;
第4题程序可以实现对12个整数进行升序冒泡排序。
main()
a[12];
int
m,n,p;
for
(m=0;
m<
=11;
m++)
scanf(“%d”,&
a[m]);
for(n=0;
n<
11-m;
n++)
if(a[n]<
a[n+1])
{p=a[n];
a[n]=a[n+1];
a[n+1]=p;
}
printf(“%d”,a[m]);
【正确答案】(P62)错误:
if
(a[n]<
a[n+1])
(a[n]>
五、程序阅读题(C语言程序设计本大题共4小题,每小题4分,共16分)
第1题main()
i,b,c,a[]={1,10,-3,-21,7,13},*p_b,*p_c;
b=c=1;
p_b=p_c=
a;
for(i=0;
i<
6;
i++)
{if(b<
*(a+i))
{b=*(a+i);
p_b=&
a;
if(c>
{c=*(a+i);
p_c=&
}}
i=*a;
*a=*p_b;
*p_b=i;
i=*(a+5);
*(a+5)=*p_c;
*p_c=i;
printf(“%d,%d,%d,%d,%d,%d\n”,
a[0],a[1],a[2],a[3],
a[4],
a[5]);
程序运行结果为:
【正确答案】(P58)13,10,-3,1,7,-21
[解析]程序定义了一个整型数组,由给它所赋的初值知,该数组有六个元素。
程序另定义了三个整型变量i、b、c和两个指针变量p_b、p_c,程序首先置变量b和c都为1,p_b和p_c都指向数组a
的首元素a[0],接着执行六次循环,循环体由两个if语句。
第一个if语句是当
b的值小于*(a+i)(就是a)时,将*(a+i)的值复制到b,并让p_b指向a,这是在a中找最大值,将最大值存于b,最大值元素的指针存于指针变量p_b,第二个if语句是当c的值大于*(a+i)(就是a)时,将*(a+i)
的值复制到c,并让p_c指向a,这是在a中找最小值,将最小值存于c,最小值元素的指针存于指针变量p_c,循环结束后的前三个语句实现最大元素与a[0]交换。
接着三个语句是在已经过前面交换的基础上,将最小元与a[5]交换。
最后程序顺序输出数组a的六个元素。
本题分数4分
第2题#include
main()
{char
*p1,*p2,str[80]=“one”;
p1=“two”;
p2=“three”;
strcpy(str+2,strcat(p1+1,p2+2));
printf(“%s\\n”,str);
【正确答案】(P63)onworee
[解析]通过strcat(p1+1,p2+2)函数得到的字符串的起始位置是p1+1,字符串的内容是woree,在strcpy函数中目标位置是str+2,所以e被覆盖。
最后的答案是onworee。
a,b,c;
scanf(“%d,%d,%d”,&
a,&
b,&
c);
printf{“f()=%d\n”,f(a,b,c)};
max(a,b,c)
a=a<
c?
a:
b;
return=a;
min(a,b,c)
b?
c;
return
f(a,b,c)
{return(max(a,b,c)+min(a,b,c))/2;
输入三个数为:
90,72,48。
【正确答案】(P68)f()=69
第4题main()
s;
s=fibonacci(4);
printf(“fibonacci(4)=%d\n”,s);
fibonacci(n)
n;
i,a=1,b=1,s=0;
for(i=0;
i<n;
i++)
{s=s+(a+b);
printf(“%4d%4d”,a,b);
a=a+b;
b=b+a;
printf(“\n”);
【正确答案】(P68)1123581321
fibonacci(4)=54
六、程序设计题(C语言程序设计本大题共1小题,共8分)
第1题将两个两位数的正整数a、b合并形成一个整数放在c中。
合并的方式是:
将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。
例如,当a=45,b=12。
调用该函数后,c=4152。
【正确答案】(P28、68)
void
fun(int
a,int
b,long
*c)
{*c=a/10*1000+a%10*10+b/10*100+b%10;
main()
a,b;
long
printf(“Input
a,b:
”);
scanf(“%d%d”,&
b);
fun(a,b,&
printf(“The
result
is:
%d\n”,
[解析]根据题意可知,函数fun的功能是将两个两位数的正整数a、b合并形成一个整数放在c中。
根据提供的合并方式,取出a的十位数,显然是通过表达式a/10,而取出a的个位数,是通过表达式a%10。
取出b的十位和个位数同理。
将一个数字放到千位上,显然是乘1000。
而将一个数字放到十位上是乘10,同理将一个数字放到百位上是乘100。
将一个数字放到个位上,直接相加即可。
七、填空题(单片机原理与接口技术本大题共8小题,每小题2分,共16分)请在每小题的空格中填上正确答案。
第1题单片机的汇编语言程序设计中,一共有两条子程序返回指令,即一般子程序返回和中断子程序返回,它们各自的指令分别是___和___。
【正确答案】(P139)RETRETI
第2题8051单片机的中断源有___个,其中000BH是的入口地址___。
【正确答案】(P171)5定时器T0
第3题8031单片机中,如希望CPU能响应定时器0和定时器1的中断,而不响应其他中断,其IE寄存器的内容应为___。
【正确答案】(P172)8AH或10001010B
第4题74LS373的功能是___。
【正确答案】(P198)三态锁存器
第5题堆栈区是在___区开辟的一个区域,其数据的存取遵守___的原则。
【正确答案】(P123)内RAM后进先出
第6题一般说,一条指令有两部分组成即___和___。
【正确答案】(P117)操作码操作数
第7题MCS-51有5个中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器___加以选择。
【正确答案】(P174)IP
第8题当程序状态字PSW为(10001001)时,当前工作寄存器组是___组,对应的工作寄存器R1、R7的地址是___H、___H。
【正确答案】(P120)1090F
八、改错题(单片机原理与接口技术本大题共2小题,每小题2分,共4分)每小题只有一处错误或不妥,请指出,并将其改正。
第1题
【正确答案】
第2题将外部RAM
0030H单元送内部RAM
30H。
MOVP2,#0
MOVR0,30H
MOVXA,@R0
MOV@R0,A
【正确答案】(P124)错误:
MOVR0,30H
MOVR0,#30H
九、程序阅读题(单片机原理与接口技术本大题共2小题,每小题4分,共8分)请阅读下列程序,写出程序运行结果。
【正确答案】(P214)
第2题执行了下列指令组后,A=,B=。
MOVA,#34H
ADDA,#48H
MOVB,A
DAA
【正确答案】(P127)82H7CH
十、程序设计题(单片机原理与接口技术本大题共1小题,共8分)
第1题试编写程序完成以内部RAM
30H为首地址的20个数据传送,目的地址为外部RAM
以2000H为首地址的区域。
【正确答案】
十一、应用题(单片机原理与接口技术本大题共1小题,共8分)
第1题
【正确答案】(P216)①MOVX②DPTR
③0C5H④@DPTR
[解析]本题主要是通过8255来控制定时器,完成分频任务。
根据题中要求,可以算得初值=5000
=1388H然后利用MOV
DPTR,#7F04给出定时器的低8位地址,再用INC
DPTR调整定时器的高8位地址。
接下来分别利用
MOVA,#88H
MOVX@DPTR,A
和
MOVA,#13H
2段程序完成对定时器的低高8位数据进行装载。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国 自考 微型计算机 原理 接口 技术 考前 02205 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)