2012年微型计算机原理与接口技术自考题模拟(9):2012年微型计算机原理与接口技术自考题模拟。本试卷总分100分;共有10类型题目
一、单项选择题 ,每小题1分,共16分,在每小题列出的四个备选项中只有一个选项是符合题目要求的,请将其代码填写在题后的括号内。
1.以下不属于单片机集成块型号的是( )
A.80486DX
B.83C51FA
C.8097BH
D.8051
2.以下所列的C语言常量中,错误的是( )
A.0xFF
B.2L
C.1.2e0.5
D."72"
3.C语言中最基本的数据类型是( )
A.整型、实型、逻辑型
B.整型、实型、逻辑型、字符型
C.整型、字符型、逻辑型
D.整型、实型、字符型
4.执行int x=2,y=3;后表达式x=(y==3)的值是( )
A.1
B.0
C.2
D.3
5.C语言函数返回值的类型是( )
A.return语句中表达式类型
B.调用该函数时主调函数的类型
C.定义该函数时函数的类型
D.调用函数时系统临时决定
6.下列程序段执行后,a的值是( )
int*p,a=10,b=1;
p=&a;a=*p+b;
A.12
B.13
C.10
D.11
7.MCS-51内部RAM字节数是( )
A.128
B.256
C.107
D.4K
8.带进位的循环移位指令是( )
A.RL
B.RR
C.CLR
D.RLC
9.下面不是中断响应条件的是( )
A.CPU处于开中断状态
B.低级中断源
C.高级中断源
D.一条指令执行完毕
10.8051定时器/计数器T0工作方式0和方式1的区别是( )
A.前者是16位后者是13位
B.前者是16位后者是8位
C.前者是13位后者是8位
D.前者是13位后者是16位
11.协调CPU与外围设备之间的数据传送的是( )
A.三态门
B.锁存器
C.缓冲器
D.寄存器
12.MCS-51单片机在正常运行程序时RST引脚是( )
A.高电平
B.低电平
C.脉冲输入
D.高阻态
13.MCS-51单片机在访问外部数据存储器时,地址指针是( )
A.DPTR
B.PC
C.PSW
D.SP
14.下列程序段的执行结果是( )
MOV R0,#30H
SETB C
CLR A
ADDC A,#00H
MOV @R0,A
A.(30H)=00H
B.(30H)=01H
C.(00H)=00H
D.(00H)=01H
15.从地址2132H开始有一条绝对转移指令AJMP addr11,指令可能实现的转移范围是( )
A.2000H—27FFH
B.2132H—2832H
C.2100H—28FFH
D.2000H—3FFFH
16.在堆栈操作中,当进栈数据全部弹出后,这时SP指向( )
A.栈底单元地址
B.7FH单元
C.栈底单元地址加1
D.栈底单元地址减1
二、填空题每小题2分,共8分请在每小题的空格中填上正确答案。
17.inta,b;则表达式(a=2,b=5,a++,b++,a+b)的值是______。
18.当a=3,b=2,c=1时,表达式f=a>b>c的值是______。
19.从键盘上输入若干个学生成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请填空。
main()
{float s,gmax,gmin;
scanf("%f,"&s);
gmax=s;gmin=s;
while(s>=0)
{if(s>gmax)gmax=s;
if(______)gmin=s;
scanf("%f",&s);}
printf("gmax=%f gmin=%f "gmax,gmin);}
20.以下程序是用来统计正整数的每位数字中零的个数,并求每位数字中最大者。请填空。
main()
{unsigned long num,max,t;
int count;
count=max=0:
scanf("%ld",&num);
do{
t=______;
if(t==0)++count;
else if(max<t)max=t;
num/=10;
}while(num);
三、改错题每小题2分,共8分每小题只有一处错误或不妥。请指出。并将其改正。
21.#include"stdio.h"
void fact(int k)
{
int i,s;
s=s*i:
return(s);
}
错误:______
改正:______
22.运行以下程序的结果是321。
main()
{int x;
x=3;
do
{printf("%d",x--);
}while(!x);}
错误:______
改正:______
23.程序输入1,输出One,输入其他,输出Other。
main()
{scanf("%d",&a);
if(a=1)printf("One ");
else printf("Other ");
}
错误:______
改正:______
24.main()
{int n;
float s=1.0;
for(n=10;n>1;n--)
s=s+1/n;
printf("%6.1f ",s);
}
错误:______
改正:______
四、程序阅读题每小题2分,共8分请阅读下列程序。写出程序运行结果。
25.#include<stdio.h>
main()
{int i,j;
inta[5]={2,4,6,9,12},b[6]={2,3,4,6,8,9};
for(i=0;i<5;i++)
for(j=0;j<6;j++)
if(*(a+i)==*(b+j)printf("%d",*(a+i));
printf(" ");
}
程序运行结果是:______
26.#include<stdio.h>
main()
{int c;
while((c=getchar())!=" ")
{switch(c-"2")
{case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break;
case 3:putchar(c+3);
case 4:putchar(c+2);break;}}
printf(" ");
}
程序运行时,输入2743<CR>,则运行结果是:______
27.main()
{int i=3,*p1;
int a[3]={15,30,45},*p2;
pl=&i;p2=a;
pl=p2+2:
printf("%d,%d ",*p1,*p2);
}
程序运行结果是:______
28.#include<stdio.h>
int f(int x,int y)
{return(x>y)?x:y);}
main()
{int a,b;
scanf("%d,%d",&a,&b);
printf("%d ",f(a,b));
}
程序运行时,从键盘输入9,8<回车>,则运行结果是:______
五、程序设计题每小题1分,共5分
29.从键盘上输入20个元素的值存入一维数组a中,然后将下标为(1、3、5、7、9……)的元素值赋值给数组b,输出数组b的内容。
六、填空题每小题2分,共16分请在每小题的空格中填上正确答案。
30.8279有______条命令,用命令字______位来表示。
31.若只需要开串行口中断,则IE的值应设置为______,若需要将外部中断0设置为下降沿触发,则执行的语句为______。
32.外围扩展芯片的选择方法有两种,它们分别是______和______。
33.MCS-51单片机中,在IP=0x00时,优先级最高的中断是______,最低的是______。
34.执行下列指令组后,标志位(OV)=______(P)=______。
MOV A,#0B4H
ADD A,#00H
SUBB A,#51H
35.当MCS-51引脚______信号有效时,表示从P0口稳定地送出了低8位地址。
36.MCS-51的定时器用作定时,其定时时间与时钟频率和计数初值有关。用作计数时,最高计数频率的______。
37.MCS-51的特殊功能寄存器分布在______地址范围内。
七、改错题每小题2分,共4分每小题只有一处错误或不妥,请指出,并将其改正。
38.下面程序段是将外部RAM30H单元的内容送到R0。
MOV R0,#30H
MOV A,@R0
MOV R0,A
错误:______
改正:______
39.下面程序段是将外部RAM1000H单元的内容送内部RAM20H单元。
MOVX DPTR,#1000H
MOVX A,@DPTR
MOV 20H,A
错误:______
改正:______
八、程序阅读题,每小题5分,共10分请阅读下列程序,写出程序运行结果。
40.下面子程序的功能是从串行接口接受一个字符,其定时器T1工作模式______,波特率为______。(时钟为11.059MHz)
START:MOV TMOD,#20H
MOV TH1,#0E8H
MOV TL1,#0E8H
SETB TR1
MOV SCON,#50H
L1: JNB RI,L1
CLR RI
MOV A,SBUF
RET
41.下面是8031扩展8255A初始化程序,其PA口设置成______,PB口和PC口设置成______。
MOV A,#90H
MOV DPTR,#7FFFH
MOVX @DPTR,A
MOV DPTR,#7FFCH
MOVX A,@DPTR
MOV DPTR,#TFFDH
MOVX @DPTR,A
九、程序设计题,共5分
42.将4个单字节数放片内30H~39H,它们求和结果放在片内50H,51H单元。
十、应用题,共20分
43.使用89C51和ADC0809的接口,采集2通道10个数据,存入内部RAM的50H~59H单元,下面是查询方式程序段。请完成填空。(IN2的地址为7FFAH,P1.0查询转换结束信号)
ORG 0100H
MOV R7, ①
MOV R0,#50H
MOV ② ,#7FFAH
NEXT:MOVX @DPTR, ③
JB ④ ,$
MOVX A, ⑤
MOV ⑥ ,A
INC ⑦
DJNZ RT ⑧
SJMP $
答:①______;②______;③______;④______;
⑤______;⑥______;⑦______;⑧______。