2012年微型计算机原理与接口技术自考题模拟(10)
摘要:2012年微型计算机原理与接口技术自考题模拟(10):2012年微型计算机原理与接口技术自考题模拟。本试卷总分100分;共有10类型题目
2012年微型计算机原理与接口技术自考题模拟(10):2012年微型计算机原理与接口技术自考题模拟。本试卷总分100分;共有10类型题目
一、单项选择题 ,每小题1分,共16分,在每小题列出的四个备选项中只有一个选项是符合题目要求的,请将其代码填写在题后的括号内。
1.以下属于单片机集成块型号的是( )
A.386DX
B.8097JF
C.8086
D.80486DX
2.C语言中最基本的数据类型是( )
A.整型、实型、逻辑型
B.整型、实型、逻辑型、字符型
C.整型、字符型、逻辑型
D.整型、实型、字符型
3.以下if语句错误的是( )
A.if(x<y);
B.if(x)x+=y;
C.if(x<y)x++;y++;ELSE x--;y--;
D.if(x!=y)scanf("%d",&x);else x++;
4.对于函数调用,以下说法错误的是( )
A.出现在执行语句中
B.出现在一个表达式中
C.作为一个函数实参
D.作为一个函数形参
5.int a[5],*p=a;对a数组元素地址的正确引用是( )
A.p+5
B.&a[0]
C.&a+1
D.*a+1
6.fclose函数的正确调用形式是( )
A.fclose(文件指针名);
B.fclose(文件名);
C.fclose(文件变量名);
D.fclose(变量名);
7.MCS-51单片机的定时器位数是( )
A.16
B.8
C.4
D.10
8.MCS-51单片机复位操作的主要功能是把PC初始化为( )
A.0100H
B.0000H
C.2080H
D.8000H
9.MCS-51系列单片机的程序存储器寻址空间是( )
A.16KB
B.32KB
C.64KB
D.128KB
10.MOVC A,@A+DPTR的寻址方式是( )
A.相对寻址
B.寄存器间接寻址
C.变址寻址
D.寄存器寻址
11.下面不属于中断功能的是( )
A.增加CPU处理能力
B.实现实时处理
C.故障的紧急处理
D.人机联系
12.8051定时器/计数器TO工作方式有( )
A.三利
B.两种
C.四利
D.一种
13.下面不是三态锁存器的是( )
A.74LS244.
B.74LS373
C.74LS377
D.74LS273
14.汇编程序在汇编过程中扫描的次数是( )
A.1
B.3
C.2
D.4
15.设累加器A的内容为OC9H,寄存器R2的内容为54H,CY=1,执行指令SUBB A,R2后结果为( )
A.(A)=74H
B.(R2)=74H
C.(A)=75H
D.(R2)=75H
16.执行MOV IE,#81H指令的意义是( )
A.屏蔽中断源
B.开放外部中断源0
C.开放外部中断源1
D.开放外部中断源0和1
二、填空题每小题2分,共8分请在每小题的空格中填上正确答案。
17.int x=2,y;则表达式y=x+5,x+y的值是______。
18.表达式7+8>2&&25%5的结果是______。
19.以下函数用于统计一行字符串中的单词个数,单词之间用空格分隔,请填空。int word_num(char strl[ ])
{inti,num=0,word=0;
for(i=0;strl[i]l=" ";i++)
if(______= =¨)word=0;
else if(word= =0){word=1;num++;}
return(num);
}
20.下面程序的功能是统计在16~31岁之间的学生人数。请填空。
main()
{int a[30],n,age,i;
for(i=0;i<30;i++)a[i]=0;
printf("Enter the number of thestudents(<30)
");
scanf("%d",&n);
printf("Enter the age of each student:
");
for(i=0;i<n;I++)
{scanf("%d",&age);_______;}
printf("the result is
");
printf("age number
");
for(i=16;i<32;i++)
printf("%d%d
",i,a[i-16]);
三、改错题每小题2分,共8分每小题只有一处错误或不妥。请指出。并将其改正。
21.main()
{int a[10],i;
for(i=1;i<=10;i++)
Scanf("%d",a[i]);
for(i=10;i>=0;i- -)
printf("%d",a[i]);
}
错误:______
改正:______
22.求1到n的自然数之和的函数。
#include"stdio.h"
int sum(int n)
{int k,s=0;
for(k=1;k<10;k++)
s=s+k:
return s;
}
错误:______
改正:______
23.struct abc
{char a[20]={0};
char b;}
main()
{struct abc studl[10];
int a;
for(a=0;a<10;a++)
scanf("%s",a);
}
错误:______
改正:______
24.#include"stdio.h"
main()
{FILE*I=fp;char ch;
if((tp=fopen("test.txt","W"))==NULL)
{printf("cannot open file
");exit(0);}
ch=getchar();
while(ch!="$")
{fputc(ch,fp);putchar(ch);
ch=getchar();}
fclose(*fp);
}
错误:______
改正:______
四、程序阅读题每小题2分,共8分请阅读下列程序。写出程序运行结果。
25.main()
{inta[]={2,4,6},*ptr=&a[0],x=8,y,z;
for(y=0;y<3;y++)
{z=(*(ptr+y)<Y)?*(PTR+y):x;
printf("%d
",z);}
}
程序运行结果是:_________
26.main()
{int n1,n2;
scanf("%d",&n2);
while(n2 !=0)
{n1=n2%10;
n2=n2/10;
printf("%d",n1);}
}
程序运行时从键盘上输入1298<回车
designtimesp=16708>,则输出结果是:
27.main()
{char n;
scanf("%e",&n);
switch(++n)
{default:printf("error");break;
ease"a":case"A":ease"b":case"B":printf("good");break;
case"c":case"C":printf("pass");
case"d":ease"D":printf("warn");}
}
程序运行时从键盘输入字母C<回车
designtimesp=16719>,则运行结果是:
28.#include
main()
{int i,j,n;
scanf("%d",&n);
for(i=n;i<5;i++)
for(j=2;j<=i;j++)putchar("#");
}
程序运行时从键盘输入1<回车
designtimesp=16728>,则运行结果是:
五、程序设计题每小题1分,共5分
29.输人三个整数X,Y,Z,请把这三个数由小到大输出。
六、填空题每小题2分,共16分请在每小题的空格中填上正确答案。
30.MCS-51系列单片机片内部数据存储器工作寄存器区32个字节被均匀地分为4个组:其中第2组工作寄存器,地址为______;第3组工作寄存器,地址为______。
31.MCS-51单片机的最大程序寻址空间是______,地址范围是______。
32.PCON寄存器中与串行通信有关的只有D7位(SMOD),该位为波特率倍增位。当SMOD=_______时,串行口波特率增加一倍;当SMOD=______时,串行口波特率为设定值。
33.已知A=87H,(30H)= 76H,执行XRLA,30H后,A=______(30H)=______。
34.指令DA A是______调整指令,它跟在______的加法指令后。
35.共阴极LED和共阳极LED的字段码互为______。
36.使用8031单片机要将引脚接低电平,因为其内部无______。
37.8051的中断向量表在______、000B H和0013H、001BH、23H。
七、改错题每小题2分,共4分每小题只有一处错误或不妥,请指出,并将其改正。
38.下面程序段是将ROM2000H单元的内容送外部RAM1000H单元。
MOV DPTR, #2000H
CLR A
MOVC A.@A+DPTR
MOV DPTR,#1000H
MOV @DPTR,A
错误:______
改正:______
39.下面程序段实现双字节加法运算(R1)(R0)+(R7)(R6)送入(31H)(30H)。
MOV A,R0
ADD A,R6
MOV 30H,A
MOV A,R1
ADD A,R7
MOV 31H,A
SJMP $
错误:______
改正:______
八、程序阅读题,每小题5分,共10分请阅读下列程序,写出程序运行结果。
40.晶振6MHz,下面中断初始化程序是使用T1,工作方式_______,在P1.0引脚输出等宽矩形波周期为______微秒的。
MOV TMOD,#20H
MOV TL1.#06H
MOV TH1.#06H
SETB EA
SETB ET1
SETB YR0
SJMP $
41.已知单片机的晶振频率为6MHz,下面程序用单片机内部定时器T0工作在方式1下,从P1.0输出周期为______的方波脉冲信号,时间常数为______。
ORG 3000H
START:MOV TMOD, #01H
MOV TL0,#OCH
MOV THO, #OFEH
SETB TR0
LOOP: JBC TFO,DONE
SJMP LOOP
DONE:MOV TL0,#OCH
MOV THO,#OFEH
CPL P1.0
SJMP LOOP
九、程序设计题,共5分
42.RAM中60H单元内存有一个十六进制数,把这个数转换为BCD码的十进制数,BCD码的十位和个位放在累加器A中,百位放在R6中。
十、应用题,共20分
43.下面程序的功能是信号灯控制程序,利用P1口控制八个发光二极管的亮与灭(设输出低电平时,对应发光二极管被点亮)。阅读程序完成说明语句。
ORG 0000H
AJMP MAIN ;转主程序
ORG 001 BH ;该地址是①的地址
AJMP CONT ;当出现②时,才会执行到该指令
ORG 0100H
MAIN: MOV TMOD,#10H ;执行该指令的目的是③
MOV TH1,#3CH ;置50ms定时初值
MOV TL1,#OBOH ;此时堆栈指针SP的内容是④
SETB EA ;执行该指令前,EA的初始值是⑤
SETB ET1 ;定时器T1开中断
SETB TR1 ;执行该指令的目的是⑥
CLR 08H ;清1s计满标志位
MOV R3,#14H ;置50ms循环初值
DISP: MOV R2,07H
MOV A,#0FEH
NEXT:MOV P1,A ;第2次执行完该指令后,对应⑦灯被点亮
JNB 08H,$ ;查询1s时间到否
CLR 08H ;清标志位
RL A
DJNZ R2,NEXT
MOV R2,#07H
NEXT1:MOV P1,A
JNB 08H,$
CLR 08H
RR A
DJNZ R2,NEXT1
SJMP DISP
CONT: MOV TH1,#3CH ;程序执行到此处时,堆栈指针SP的内容是⑧
MOV TL1,#OBOH
DJNZ R3,EXIT ;判1s定时到否
MOV R3,#14H ;重置50ms循环初值
SETB 08H ;标志位置1
EXIT: RETI ;该指令的功能是将堆栈的内容送至PC
答:①______;②______;③______;④______;
⑤______;⑥______;⑦______;⑧______。
延伸阅读
- 考前自救指南:希赛自考题库快速提分
- 自考专属刷题工具,刷题即提分!
- 最后9天,自考历年真题应该怎么刷?
- 自考备考一站式服务:希赛自考题库APP
- 0基础逆袭秘籍:希赛全套自考学习包(含智能题库)
- 避开备考误区!用希赛自考APP快速提分!
自考微信公众号
扫码添加
自考备考资料免费领取
去领取
扫描二维码