首页 [自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4

[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4

举报
开通vip

[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4PAGE1/NUMPAGES1[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4微型计算机原理与接口技术自考题模拟4一、单项选择题在每小题列出的四个备选项中只有一个选项是符合题目要求的。问题:1.以下集成块型号中不属于8位系列单片机型号的是A.83C152JCB.83C52JAC.83C51FBD.8097JF答案:D问题:2.以下使用后缀表日月十六进制数的是A.BB.HC.DD.O答案:B问题:3.以下说法正确的是A.计...

[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4
[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4PAGE1/NUMPAGES1[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4微型计算机原理与接口技术自考题模拟4一、单项选择题在每小题列出的四个备选项中只有一个选项是符合题目要求的。问题:1.以下集成块型号中不属于8位系列单片机型号的是A.83C152JCB.83C52JAC.83C51FBD.8097JF答案:D问题:2.以下使用后缀表日月十六进制数的是A.BB.HC.DD.O答案:B问题:3.以下说法正确的是A.计算机能直接执行C的源程序B.后缀是EXE的文件是二进制文件C.后缀是OBJ和EXE的文件是可执行文件D.后缀是OBJ的文件是二进制文件答案:D[解析]后缀是EXE的文件不是纯二进制文件。问题:4.从循环体内某一层跳出,继续执行循环外的语句是A.return语句B.break语句C.continue语句D.空语句答案:B问题:5.执行下面程序段后,正确的结果是intx=0,y=0;while(x<15)y++,x+=++y;A.x=8B.y=20C.x=20D.y=12答案:C[解析]见下表循环次数0123y=2468x=261220问题:6.以下定义,使p指向data和a域的赋值语句是structstuclent{inta;floatb;}data,*p;A.p=&a;B.p=data.a;C.*p=data.a;D.p=&data.a;答案:D[解析]和指针指向变量一样,取地址放入结构体指针变量中。问题:7.下面不是运算器完成的主要任务是A.算术运算B.位运算C.数据处理D.指令译码答案:D问题:8.不是伪指令关键字的是A.ORGB.STARTC.EQUD.DATA答案:B问题:9.8051/8031型单片机提供中断源的个数是A.3B.4C.6D.5答案:D问题:10.不是MCS-51单片机I/O的数据传送方式的是A.无条件传送B.随机传输C.查询方式D.中断方式答案:B问题:11.共阴极显示管点亮时输入电平是A.低电平B.低电压C.低阻态D.高电平答案:D问题:12.单片机上电复位后,堆栈区的最大允许范围的单元是A.64B.120C.128D.256答案:B[解析]7FH-08H=77H,77H是119,再加1等于120。问题:13.8051单片机的VCC(40)引脚是A.主电源+5V引脚B.接地引脚C.备用电源引脚D.访问片外存贮器引脚答案:A问题:14.8031的定时器T1作计数方式,模式2的方式控制字是A.60HB.02HC.06HD.20H答案:A问题:15.8031的定时器T0作计数方式,用模式1(16位计数器),则应用初始化编程指令是A.MOVTMOD,#01HB.MOVTMOD,10HC.MOVTMOD,#05HD.MOVTCON,#05H答案:C问题:16.8255是一个可编程的:I/O接口芯片,“可编程”是A.有14位可控定时器/计数器B.芯片内包含有256字节的RAMC.只能使用中断编程的方法进行I/O数据传送D.使用命令字以程序方法设置I/O数据传送的方式答案:D二、填空题问题:1.inta,b,c;则表达式a=(b=4)+(c=2)的值是______。答案:6[解析]先算括号,再算术。问题:2.若a=1,b=4,c=3,则表达式!(a<b)||!c&&1的值是______。答案:0[解析]先算括号,再单目运算。问题:3.以下程序的功能是计算字符串的长度。请填空。#include<stdio.h>main(){charstr[100],*sp=str;intnlen=0;scanf("%s",str);for(;*sp!='0';sp++)______;printf("%d",nlen);}答案:nlen++[解析]利用字符串结束标志'0',nlen是计数器。问题:4.以下程序的功能是对10个整数从小到大排序。请填空。#include<stdio.h>sort(intarr[],intn);main(){inta[10],*p,i;printf("input10numbers:");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("ntheoriginalarrayis:");for(p=a;P<a+10;p++)printf("%d",*p);sort(a,10);printf("nthepresentarrayis:");for(P=a;P<a+10;P++)printf("%d",*p);}sort(intarr[],intn){int*p1,*p2,temp;for(p1=arr;p1<arr+(n-1);p1++)for(p2=p1+1;p2<arr+n;p2++)if(______){temp=*p1;*p1=*p2;*p2=temp;}}答案:*p1>*p2三、改错题每小题只有一处错误或不妥。请指出。并将其改正。问题:1.#include<stdio.h>#include<conio.h>main(){inti,j;charch;while(ch=getchar()!='r'){i++:printf("%c",ch);}printf("youtype%dcharactersn",i);}错误:______改正:______答案:错误:while(eh=getehar()!m='r')改正:将其修改为while(ch=getch()!='r')[解析]getehar()函数需要回车,geteh()不需要回车。问题:2.main(){floata[10]={0.0};intifor(i=0;i<3;i++)scanf("%d",&a[1]);for(i=0;i<10;i++)a[0]=a[0]+a[i];printf("%dn",a[0]);}错误:______改正:______答案:错误:scanf("%d",&a[1]);改正:将其修改为scanf("%f",&a[1]);[解析]scanf函数格式类型要对应。问题:3.下面程序的功能是将大写字母改成小字母,小字母改成大写字母。main(){charch;scanf("%c",&ch);if(ch>='A'||ch<='Z')ch=ch+32;elseif(ch>='a'&&ch<='z')ch=ch-32;printf("%c",ch);}错误:______改正:______答案:错误:ch>='A'||ch<='Z'改正:将其修改为ch>='A'&&ch<='Z'[解析]表达式逻辑错误。问题:4.main(){chars[]="9876",*p;*p=s:printf("%s",p);}错误:______改正:______答案:错误:*p=s;改正:将其修改为p=s;[解析]指针变量赋值错误。四、程序阅读题请阅读下列程序,写出程序运行结果。问题:1.#include<stdio.h>#defineN6voidmain(){inta[N]={4,5,8,3,6,1};intj,i,t;for(i=0;i<N-1;i++)for(j=0;j<N-1-i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}for(j=0;j<N;j++)printf("%5d",a[j]);程序运行结果是:______答案:134568[解析]双循环语句是排序过程。问题:2.#include<stdio.h>main(){intx,sum;scanf("%d",&x);sum=0;while(x>0){if(x%2==0)sum+=x;scanf("%d",&x);}printf("%dn",sum);}程序运行时输入19340<回车>,则程序运行结果是:______答案:4[解析]19340每个数据之间都有空格,在条件语句中只有偶数相加。所以只有4。问题:3.#include"stdio.h"main(){inti;for(i=1;i<=5;i++){if(i%2)printf("*");elsecontinue;printf("#");}printf("#");}程序运行结果是:______答案:*#*#*##[解析]当i=1,3,5时各输出*#,最后输出#。问题:4.#include<stdio.h>main(){intn,sum=0;scanf("%d",&n);do{sum=sum+(n%10)*(n%10);n=n/10;}while(n);printf("sum=%d",sum);}程序运行时,从键盘输入2345<回车>,运行结果是:______答案:54[解析]n=2345,n%10=5,sum=25n=n/10,n%10=4,sum=25+16n=n/10,n%10=3,sum=25+16+9n=n/10,n%10=2,sum=25+16+9+4=54n=2时结束循环。五、程序设计题问题:1.每个苹果0.8元,第一天买两个苹果,第二天开始,每天买前一天的两倍,直到买的苹果个数达到不超过100的最大值。编写程序,求每天平均花多少钱?答案:#inelude<stdio.h>main(){intday=0,buy=2;floatsum=0.0,ave;do{sum+=0.8*buy;day++;buy*=2;}while(buy<=100);ave=sum/day;printf("%f",ave);}六、填空题-单片机原理与接口技术问题:1.8255A属于可编程的______I/0接口芯片,8255A的A通道有______种工作方式。答案:并行3问题:2.MCS-51的存储器空间配置从功能上可分为四种类型:______、内部数据存储器、______、外部程序存储器。答案:片内程序存储器外部数据存储器问题:3.执行下面一段程序后,(A)=______,(B)=______。MOVSP,#60HMOVA,#10HMOVB,#01HPUSHAPUSHBPOPAPOPB答案:01H10H[解析]注意堆栈操作的后进先出。问题:4.8051单片机内有______个16位的定时/计数器,______有四种工作方式。答案:2T0问题:5.MULAB的执行结果是存储高8位在______中,低8位在______中。答案:BA问题:6.8031单片机内部数据RAM中的位寻址区的地址范围是______。答案:20H~2FH问题:7.如要选择第2组的工作寄存器交换数据,可先执行指令______。PSW(地址为DOH)的格为CYACFORS1RS0OV-P答案:SETBPSW.4[解析]将RS1置1。问题:8.某8031单片机时钟频率为12MHz,现将T0设置为定时方式1,定时时间为1毫秒,其计数器中的时间常数初值应为______。(写成四位十六进制数)答案:0FC18H[解析]因为机器周期=12/12MHz=1μs,初值为1ms/1μs=1000,所以N=216-1000=65536-1000=64536=0FC18H。因为方式1,所有216。七、改错题-单片机原理与接口技术每小题只有一处错误或不妥。请指出。并将其改正。问题:1.下面程序段是将片外RAM20H~25H单元清零。MOVR0,#20HMOVR7,#06HCLRALOOP:MOV@R0,AINCR0DJNZ,#3000H错误:______改正:______答案:错误:MOV@R0,A改正:MOVX@R0,A[解析]要使用片外数据传送指令问题:2.下面程序段是将ROM3000H单元内容送R7。MOVDPTR,#3000HCLRAMOVCA,@R7+DPTRMOVR7,A错误:______改正:______答案:错误:MOVCA,@R7+DPTR改正:MOVCA,@A+DPTR[解析]R7不能作变址寻址八、程序阅读题-单片机原理与接口技术请阅读下列程序,写出程序运行结果。问题:1.以下是8051单片机定时/计数器的初始化程序(设单片机晶振频率是6MHz):T0作为定时,定时时间为______,T1作为计数,记满______溢出。ORG0000HLJMP0050HORG0050HMOVTMOD,#20HMOVTH0,#63HMOVTL0,#18HMOVTH1,#9CHMOVTL,#9CHSETBEASETBTR0SETBTR1SJMP$答案:10ms100[解析]TOMD=20H,说明设置,T0为定时,方式0,T1为计数,方式2。所以:T1计数初值9CH=10011100B=156,256-156=100即满100溢出。T0的初值为6318H=0110001111000B=3192,213=8192,8192-3192=5000,机器周期为12/6MHz=2μs,2μs×5000=10000μs=10ms。问题:2.下面程序是将片内RAM______开始的单元内10个二进制数,找出其中最大值并存于单元中。START:MOVR0,#40HMOVR7,#09HMOVA,@R0LOOP:INCR0MOV30H,@R0CJNEA,30H,NEXTNEXT:JNCBIE1MOVA,30HBIE1:DJNZR7,LOOPMOV50H,ARET答案:40H50H[解析]START:MOVR0,#40H;设置片内开始单元MOVR7,#09H;十个存储数据MOVA,@R0;第一个数据传送至ALOOP:INCR0;R0指向下一个数据MOV30H,@R0;假定该数据为最大CJNEA,30H,NEXT;A和该数据比较NEXT:JNCBIE1;如果A大转移到LOOPMOVA,30H;如果A小,将该数据送入ABIE1:DJNZR7,LOOP;数据个数减1,不为0转移到LOOPMOV50H,A;A中为最大数据,送入50H单元RET九、程序设计题-单片机原理与接口技术问题:1.RAM中60H单元内存有一个十六进制数,把这个数转换为BCD码的十进制数,BCD码的十位和个位放在累加器A中,百位放在R6中。答案:ORG2200HMOVA,60HMOVB,#64HDIVABMOVR6,AMOVA,#0AHXCHA,BDIVABSWAPAORLA,BSJMP$END十、应用题下面程序是A/D转换应用程序,可实现多路模拟量输入的巡回检测,采样数据被存放在片内RAM单元中。阅读程序完成说明语句。ORG0000HAJMPMAINORG0013H;该地址是①地址AJMPINT1MAIN:MOVR0,#78H;78是②地址MOVR2,#08H;SETBIT1;该指令的作用是③SETBEASETBEX1;允许INT1中断MOVDPTR,#6000H;#6000H是④地址MOVA,#00H;A的内容对转换结果⑤影响LOOP:MOVX@DPTR,A;该指令的作用是⑥HERE:SJMPHEREDJNZR2,LOOPINT1:MOVXA,@DPTR;当⑦时,程序将运行到此处。MOV@R0,AINCDPTR;DPTR加1的目的是⑧INCR0RET1答:①______;②______;③______;④______;⑤______;⑥______;⑦______;⑧______;1.答案:①INT1中断源的入口2.答案:②存放转换结果的首地址3.答案:③设置为边沿触发4.答案:④809通道0的5.答案:⑤没有6.答案:⑥启动0809进行转换7.答案:⑦发生中断8.答案:⑧修改通道地址
本文档为【[自学考试密押题库与答案解析]微型计算机原理与接口技术自考题模拟4】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
言言无悔一生
暂无简介~
格式:doc
大小:25KB
软件:Word
页数:11
分类:
上传时间:2022-01-19
浏览量:0