嵌入式系统设计师上午基础知识考试选择题专项强化真题试卷7
中文选择题
1.若内存按字节编址,用存储容量为32K×8比特的存储器芯片构成地址编号 A0000H~DFFFFH的内存空间,则至少需要(1)片。(C)
A. 4
B. 6
C. 8
D. 10
解析:本题考查内存容量的计算。给定起、止地址码的内存容量=终止地址-起始地址+1。将终止地址加1等于E0000H,再减去起始地址,即E0000H-A0000H=40000H。十六进制的(40000)16=218。组成内存储器的芯片数量=内存储器的容量/单个芯片的容量。218/(32*210)=218/215=23
2.文件系统的主要功能是(52)。(A)
A. 实现对文件的按名存取
B. 实现虚拟存储
C. 提高外有的读/写速度
D. 用于保存系统文档
解析:文件系统能够用于保存系统文档和支持虚拟存储,但其主要功能是实现了对文件的按名存取,当用户给定一个文件名时,系统能通过这个名字找到相应的文件,并对其进行访问。
3.(61)的做法不利于嵌入式应用软件的移植。(D)
A. 在软件设计上,采用层次化设计和模块化设计
B. 在软件体系结构上,在操作系统和应用软件之间引入一个虚拟机层,把一些通用的、共性的操作系统API接口函数封装起来
C. 将不可移植的部分局域化,集中在某几个特定的文件之中
D. 在数据类型上,尽量直接使用C语言的数据类型
解析:为了提高嵌入式应用软件的可移植性,在软件设计上,要采用层次化设计和模块化设计。在软件体系结构上,可以在操作系统和应用软件之间引入一个虚拟机层,或者叫操作系统抽象层,把一些通用的、共性的操作系统API接口函数封装起来。并且尽可能将不可移植的部分局域化,集中在某几个特定的文件之中。而在数据类型上,由于C语言的数据类型与机器的字长和编译器有关,因此尽量不要直接使用c语言的数据类型。
4.下面(38)不是操作系统中调度程序所采用的调度算法。(B)
A. 先来先服务(FCFS)
B. 先进先出(FIFO)
C. 时间片轮转调度
D. 优先级调度
解析:本题考查操作系统中进程调度算法的基本知识。一般操作系统中的调度程序所采用的调度算法有先来先服务(FCFS)、轮询(Round Robin)、优先级(Priority)及它们的各种组合。
5.某8位D/A变换器的输出最大电压为5V,其分辨率指标是最低有效位输入时输出的变化程度,那么该D/A变换器的分辨率是_______。(B)
A. 10mv
B. 20mv
C. 40mv
D. 50mv
解析:本题考查嵌入式处理器D/A的基础知识。
D/A转换器就是将数字量转换为模拟量的电路。主要用于数据传输系统、自动测试设备、医疗信息处理、电视信号的数字化、图像信号的处理和识别、数字通信和语音信息处理等。
D/A转换器输入的数字量是由二进制代码按照数位组合起来表示,在D/A转换中,要将数字量转换为模拟量必须先把每一位按照其权的大小转换为相应的模拟量,然后再将各个分量相加,其总和就是和数字量对应的模拟量。
D/A转换器的性能指标包括分辨率、稳定时间(转换时间)、绝对精度、线性误差。分辨率反映了D/A转换器对模拟量的分辨能力,实际就是输入二进制最低有效位LSB相当的输出模拟电压,简称为1LSB。稳定时间是指输入二进制变化量是满量程时,D/A转换器的输出达到离终值正负1/2LSB时所需要的时间。绝对精度是指输入满刻度数字量时,D/A转换器的实际输出值与理论值之间的偏差。
若某D/A转换器的位数为8,则刻度值为255,如果输出最大电压是5V,则D/A分辨率为5V/255即为20mv。
6.阅读下面的C语言程序,请给出正确的输出结果________。
#include
#define N 10
#define s(x) x*x
#define f(x) (x*x)
#define g(x) ((x)*(x))
main()
{ int i1,i2,i3,i4;
i1=1000/s(N);
i2=1000/f(N);
i3=f(N+1);
i4=g(N+1);
printf(”i1=%d,i2=%d,i3=%d,i4=%d\n”,i1,i2,i3,i4);
}(A)
A. i1=1000,i2=10,i3=21,i4=121
B. i1=10,i2=10,i3=121,i4=121
C. i1=1000,i2=1000,i3=21,i4=21
D. i1=10,i2=1000,i3=121,i4=21
解析:本题考查宏概念,以及宏替换相关的基础知识。
表达式1000/s(N)宏替换后为:1000/10*10,因此结果为1000,而不是期待的10。
表达式1000/f(N)宏替换后为:1000/(10*10),因此结果为10,是期待的结果。
表达式f(N+1)宏替换后为:(10+1*10+1),因此结果为21,而不是期待的121。
表达式g(N+1)宏替换后为:((10+1)*(10+1)),结果为121,是期待的结果。
因此,题中程序运行结果为“1l=1000,i2=10,i3=21,i4=121”。
7.一个C语言程序的执行是从______。(A)
A. 本程序的main函数开始,到main函数结束
B. 本程序文件的第一个函数开始,到本程序的最后一个函数结束
C. 本程序的main函数开始,到本程序的最后一个函数结束
D. 本程序文件的第一个函数开始,到本程序main函数结束
解析:本题考查C语言方面的基础知识。
C语言是一种面向过程的、模块化的高级程序设计语言,广泛应用于各行各业。在一个C语言程序中,有且仅有一个main()函数,但可以有多个其他函数,每一个函数完成相对独立的功能,函数是C语言程序的基本模块单元。main()是函数名,后面的一对圆括号“()”用来写函数的参数,参数可以省略,单圆括号不能省略。
一个C语言程序的执行总是从main()函数开始,不论main()函数在整个程序中的位置如何。直到执行完main函数体中的最后一条语句,即到main函数结束。
8.以下关于软件验证的叙述中,错误的是_____________。(D)
A. 试图证明在软件生命周期各阶段,软件产品或中间产品能满足客户需求
B. 强调对于过程的检验,而不是对于结果的检验
C. 验证软件是否满足它的需求规格说明
D. 验证软件的手段只有软件测试和评审
解析:本题考查关于软件验证方面的概念和知识。
软件验证,就是希望证明在软件生命周期各阶段,软件产品或中间产品能满足客户需求,强调对于过程的检验,而不是对于结果的检验,验证软件是否满足它的需求规格说明。
验证软件的手段有测试、同行评审、审查、走查、模拟、演示等。
9.下面关于软件需求分析的叙述,错误的是_____________。(D)
A. 需求
本文档预览:3600字符,共12058字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载