一起答

2017年软考中级嵌入式系统设计师模拟试题3

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1.    阅读以下关于 C语言及 C代码的叙述,回答问题 1至问题 3,将答案填入答题纸的对应栏内。

    【说明】

       在开发某嵌入式系统时,设计人员根据系统要求,分别编写了如下三部分程序,其中:

       【C代码 1】是李工为了在嵌入式平台上开发一段可变参数函数,在X86 平台上实现的一个参数个数可变函数实例。

       【C代码 2】是王工在编写软件时,自己编写的内存拷贝函数。

       【C代码 3】是赵工编写的一段数据处理的程序,其中 fun()的含义为从已创建的一个单向链表中查找倒数第index 个节点。他的设计思路为:首先创建两个指针 ptrl,ptr2,并且都指向链表头,然后 ptrl向前走index 步,这样ptrl和 ptr2 之间就间隔 index 个节点,然后 ptrl和ptr2 同时向前步进,当 ptrl到达最后一个节点时,ptr2 就是倒数第 index 个节点了。ReverseList()为赵工编写的对已有单向链表进行逆序重排的函数。

    【C代码 1】

         long sum(int i,...)

         {

           int *p,j;

           long s = 0;

    p=&i+1;

            for(j=0;j

    s+=p[j]

            return s;

           }                

         long Sum = sum(3,l,2,3);

    【C代码 2】

    static int pent;

    ……

       void *MyMemcpy(void * dest, const void* src, int n )

       {

           char *pDest = (char *)dest;

           char *pSrc = (char *)src;

           for (int i=0;i

               *(pDest +i) = *(pSrc+i);

           }                return dest;

           }

     【C代码 3】

           node *fun(node * head, int index)

           {

                node *ptr1,*ptr2;

                  int 1 = 0;     

                ptr1 = head;

                ptr2 = head;

                if( head == NULL || head->next == NULL)

                   return ptrl;

    while(i

                {

                 (1)     

                  if(ptrl == NULL)

                    return head;

                   i++;

                   }

                while(ptrl->next != NULL)

                {

    ptrl = ptrl->next;

                    (2)    ;

                }

                  return  (3)  ;

                 }

                node* ReverseList(node *head)

                 {

                   node *templ = NULL;

                   node *temp2 = NULL;

                   node *temp3 = NULL;

                   if((head->next == NULL) || (head == NULL))

                    {       

                        return head;

                   }     templ=head;

        temp3= templ->next;

        templ->next= NULL;

        while(temp3->next!=NULL)

        {

             temp2 = temp3;

             temp3= temp3->next;

              (4) ;

              templ=temp2;

        }

        temp3->next= templ;

        retum     (5)

    }

    【问题1】 

       执行【C代码 1】后,Sum的值应为多少?请用十进制表示。

    【问题2】 

       请问【C代码2】中 static的作用是什么?const的作用是什么?王工自己编写的内存拷贝函数安全吗?

    如存在缺陷,请指出缺陷在哪里。

    【问题3】 

     仔细阅读并分析【C代码 3】,填补其中的空(1)~(5)。

  2. 假设有 8 个记录,它的初始关键字序列为{5,7,3,8,2,9,1,4},用冒泡排序对它进行排序,第5次排序结果为 () 。

    • A. 5,3,7,2,8,1,4,9
    • B. 2,1,3,4,5,7,8,9
    • C. 3,2,5,1,4,7,8,9
    • D. 1,2,3,4,5,7,8,9
  3. 表示浮点数时,若要求机器零在计算机中的表示为全“0”,则阶码应采用()。

    • A.原码
    • B.反码
    • C.补码
    • D.移码
  4. 现有3个同时到达的作J1、J2和J3,它们的执行时间分别是T1 、T2 和T3 ,且 T1<T2<T3。系统按单道方式运行且采用短作业优先算法,则平均周转时间是______。

    • A.T1 +T2 +T3
    • B.(T1 +T2 +T3 ) /3
    • C.(3T1 +2T2 +T3 ) /3
    • D.(T1 +2T2 +3T3 ) /3
  5. 若程序运行时系统报告除数为0,这属于()错误。

    • A.语法
    • B.静态语义
    • C.动态语义
    • D.运算对象不匹配
  6. 以下关于Cache的叙述中,正确的是 () 。 

    • A. 在容量确定的情况下,替换算法的时间复杂度是影响Cache命中率的关键因素
    • B. Cache 的设计思想是在合理的成本下提高命中率
    • C. Cache 的设计目标是容量尽可能与主存容量相等
    • D. CPU 中的Cache容量应大于CPU 之外的Cache容量
  7. 风险预测从两个方面评估风险,即风险发生的可能性以及______。

    • A.风险产生的原因
    • B.风险监控技术
    • C.风险能否消除
    • D.风险发生所产生的后果
  8. 若某计算机系统的I/O接口与主存采用统一编址,则输入输出操作是通过()指令来完成的。

    • A.控制
    • B.中断
    • C.输入输出
    • D.访存
  9. 以下关于C/C++语言指针变量的叙述中,正确的是______。

    • A.指针变量可以是全局变量也可以是局部变量
    • B.必须为指针变量与指针所指向的变量分配相同大小的存储空间
    • C.对指针变量进行算术运算是没有意义的
    • D.指针变量必须由动态产生的数据对象来赋值
  10. 网页中代码定义了 () 。 

    • A. 一个单选框         
    • B. 一个单行文本输入框 
    • C. 一个提交按纽        
    • D. 一个使用图象的提交按纽  
  11. 计算机通过MIC(话筒接口)收到的信号是.()。

    • A.音频数字信号
    • B.音频模拟信号
    • C.采样信号
    • D.量化信号
  12. 在汇编过程中,不产生机器码,只用来指示汇编程序如何汇编的指令是 () 。 

    • A. 宏指令   
    • B. 伪指令     
    • C. 汇编指令   
    • D. 机器指令
  13. 实现VPN的关键技术主要有隧道技术、加解密技术、()和身份认证技术。

    • A.入侵检测技术
    • B.病毒防治技术
    • C.安全审计技术
    • D.密钥管理技术
  14. 系统分析模型应明确体现的因素是 () 。 ① 性能描述 ②    功能描述   ③ 约束条件    ④ 系统结构    ⑤ 动态模型。

    • A. ①、②、③、④和⑤         
    • B. ①、②、③和⑤
    • C. ①、②和④           
    • D. ①、②、④和⑤
  15. 对于内存与接口地址独立编址的计算机,下列描述中,不正确的是()。

    • A.内存地址也可作为接口地址使用
    • B.内存地址不可作为接口地址使用
    • C.接口地址不可作为内存地址使用
    • D.接口地址也可作为外存地址使用
  16. 计算机的体系结构一般分为冯·诺依曼结构和哈佛结构两种,以下对哈佛结构的叙述中,不正确的是()。

    • A.程序和数据保持在同一物理存储器上
    • B.指令、数据可以有不同宽度
    • C.DSP数字信号处理器是哈佛结构
    • D.ARM9核是哈佛结构
  17. 在并行环境中的某些任务必须协调自己的运行速度,以保证各自的某些关键语句按照某种事先规定的次序执行,这种现象被称为任务的()。

    • A.执行
    • B.互斥
    • C.调度
    • D.同步
  18. 软件测试按级别可分为 () 。

    • A. 单元测试、部件测试、配置项测试、系统测试
    • B. 黑盒测试、白盒测试、灰盒测试
    • C. 代码走查、逻辑测试、功能测试、性能测试
    • D. 接口测试、边界测试、部件测试、系统测试
  19. 利用 ()可以获取某FTP服务器中是否存在可写目录的信息。

    • A.防火墙系统
    • B.漏洞扫描系统
    • C.入侵检测系统
    • D.病毒防御系统
  20. 对同一段音乐可以选用MIDI格式或WAV格式来记录存储。以下叙述中()是不正确的。

    • A.WAV格式的音乐数据量比MIDI格式的音乐数据量大
    • B.记录演唱会实况不能采用MIDI格式的音乐数据
    • C.WAV格式的音乐数据没有体现音乐的曲谱信息
    • D.WAV格式的音乐数据和MIDI格式的音乐数据都能记录音乐波形信息
  21. 在嵌入式系统设计中,用来进行系统初始代码调试的接口称为()。

    • A.PCI接口  
    • B.USB接口  
    • C.网络接口  
    • D.JTAG接口
  22. 寄存器间接寻址方式中,操作数处在()。

    • A.通用寄存器
    • B.主存单元
    • C.程序计数器
    • D.堆栈
  23. 在嵌入式系统的存储机制中,为了保证Cache和Memory的数据一致性,通常有三种方法,依次是write through,post write和write back,其中下面属于write through的特点的是()。

    • A. CPU向Cache写入数据时,同时向Memory复制一份
    • B.CPU更新Cache数据时,把更新的数据写入到更新缓冲器
    • C.CPU更新Cache时,只标记更新的Cache区域
    • D.当Cache区数据被更新时,才更新Memory
  24. 软件质量管理活动不包括______。

    • A.软件质量保证
    • B.验证与确认
    • C.评审与审计
    • D.软件编码
  25. 对于数组 float array[5][4],若数组元素 array[0][0]的地址为 2400,每个数组元素长度为 32 位(4 字节),且假定其采用行序为主的存储模式,那么 array[3][2]的内存地址为 () 。

    • A. 2448   
    • B. 2452  
    • C. 2456  
    • D. 2460
  26. () 确定了标准体制和标准化管理体制,规定了制定标准的对象与原则以及实施标准的要求,明确了违法行为的法律责任和处罚办法。

    • A. 标准化    
    • B. 标准      
    • C. 标准化法    
    • D. 标准与标准化
  27. 进行软件项目的风险分析时,风险避免、风险监控和风险管理及意外事件计划是().活动中需要考虑的问题。

    • A.风险识别
    • B.风险评估
    • C.风险预测
    • D.风险控制
  28. 下列关于流水线的叙述中,错误的是 () 。

    • A. 流水线能够提高吞吐率
    • B. 流水线提高了器件的利用率
    • C. 流水线提高了单指令的处理速度
    • D. 超标量处理器采用了流水线技术