嵌入式培训 百分网手机站

嵌入式系统开发工程师考试模拟题

时间:2017-10-17 12:50:59 嵌入式培训 我要投稿

2017嵌入式系统开发工程师考试模拟题

  一、编程开发能力:

  1、用预处理指令#define声明一个常数,用以表明一年中有多少秒(忽略闰年问题);写一个“标准”宏MIN函数,这个宏输入两个参数并返回较小的一个。

  2、用变量a给出下面的定义:

  (1)一个整型数(An integer);

  (2)一个指向整型数的指针(A pointer to an integer);

  (3)一个指向指针的指针,它指向的指针是指向一个整型数(A pointer to a pointer to an integer);

  (4)一个有10个整型数的数组(An array of 10 integers);

  (5)一个有10个指针的数组,该指针是指向一个整型数的(A array of 10 pointers to integers);

  (6)一个指向有10个整型数组的指针(A pointer to an array of 10 integers);

  (7)一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument returns an integer);

  (8)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数(An array of 10 pointers to functions that take an integer argument and return an integer);

  3、关键字volatile有什么含义?并举出三个不同的.例子。

  4、嵌入式系统总是要用户对变量或寄存器进行位操作,给定一个整型变量a,写两段代码,第一个设置a 的bit 3,第二个清除a 的bit 3,在以上操作中,要保持其他位不变。

  5、嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点,在某工程中,要去设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器,写代码去完成这一任务。

  6、中断是嵌入式系统中的重要组成部分,这导致了很多编译开发商提供一种扩展——让标准C支持中断,具有代表性的是,产生一个新的关键字:__interrupt,下面的代码就使用了__interrupt去定义了一个中断子程序(ISR),请评论下这段代码的__interrupt,

  double compute_area(double radius) {

  double area=PI*radius*radius; print f("\n Area"=%f,area); return area; }

  7、尽管不像非嵌入式计算机那样常见,嵌入式系统还是有从堆(heap)中动态分配内存的过程的,那么嵌入式系统中,动态分派内存可能发生的问题是什么?

  8、关键字static 的作用是什么?

  9、#include 与#include "file.h"的区别? 10、请说出const 与#define 相比,有何优点?