【计算机类职业资格】嵌入式系统设计师-29及答案解析.doc
《【计算机类职业资格】嵌入式系统设计师-29及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】嵌入式系统设计师-29及答案解析.doc(8页珍藏版)》请在麦多课文档分享上搜索。
1、嵌入式系统设计师-29 及答案解析(总分:30.00,做题时间:90 分钟)一、试题一(总题数:1,分数:15.00)阅读以下说明,回答下列问题。 说明 在某嵌入式处理器上,编写以下两段程序(编译选项中,存储采用 4字节对齐方式)。 程序段 1: struct student1 char name10; long sno; char sex; float score4; *p1, a1, b1; 程序段 2: union student2 char name10; long sno; char sex; float score4; *p2, a2, b2; 汉诺塔问题说明:有 n个盘子在 A处
2、,盘子从小到大,最上面的盘子最小,程序要把这 n个盘子从 A处搬到 C处,可以在 B处暂存,但任何时候都不能出现大的盘子压在小的盘子上面的情况。 下列是一段求解汉诺塔问题的 C语言程序。 #include stdio.h void move(int n, char a, char c) static int Step=1; printf(“Step %2d: Disk %d %c- %cn“,Step,n,a,c); Step+; void Hanoi(int n, char a, char b, char c) if (n1) Hanoi(n-1, a, c, b); move(n, a,
3、c); Hanoi(n-1, b, a, c) ; else move(n, a, c); void main() Hanoi(3,“A“, “B“, “C“); (分数:15.00)(1).C语言函数的一般格式为: 函数类型 函数名 (参数列表) 函数体; 简答下述问题。 (1)函数类型的含义是什么? (2)参数列表的含义是什么? (3)C语言函数之间的参数如何传递?(分数:5.00)_(2).回答问题。 (1)sizeof(struct student1)结果是多少? (2)sizeof(union student2)结果是多少? (3)变量 a2在程序段 2中定义,写出执行以下语句后的输
4、出结果。 strcpy(a2. name, “zhangwei“); a2. Sex=“f“; printf(“%s“, a2.name);(分数:5.00)_(3).仔细阅读求解汉诺塔问题的 C语言程序,完成其中空白填空。 运行结果为: Step 1:Disk 1 A-C Step 2:_ Step 3:Disk 1 C-B Step 4:_ Step 5:_ Step 6:Disk 2 B-C Step 7:_(分数:5.00)_二、试题二(总题数:1,分数:15.00)阅读以下关于某嵌入式系统 BIT的说明,回答下列问题。 说明 某公司负责研制一个嵌入式计算机系统,如图 1所示。该系统以
5、 PowerPC处理器为核心,通过 AD进行实时数据采集,并将采集来的数据进行预处理后,通过 RS422总线发送给后端计算中心。 (分数:15.00)(1).王工负责对该系统进行故障模式分析,识别出了该系统可能出现的故障模式,如表 1所示。请将属于CPU和 RAM的故障找出来。 表 1 某嵌入式系统的故障列表 序 号 故障列表 1 存储单元无法访问 2 指令译码故障 3 发送寄存器有固定位错误 4 浮点处理单元故障 5 不可编程与阵列故障 6 存储单元一直为 0或 1 7 逻辑物理地址转换错 8 输入电压超出精度范围 9 数据校验错 (分数:5.00)_(2).王工设计了三种 BIT测试程序,
6、分别是上电 BIT、周期 BIT、维护 BIT。运行流程如图 2所示。 (分数:5.00)_(3).李工负责设计 CPU单元的 BIT测试算法,通过对每组指令分别设计一组测试用例,定义不同的操作数、操作码和预期值,在指令运行后比较结果与预期值。由于该系统选用的处理器集成了多级 Cache(高速缓存),并且指令缓存和数据缓存是分开的,执行指令功能测试前需要刷新指令 Cache,以保证与内存中的测试代码一致。每个测试项的测试结果正确为 0,故障为 1。 以 32位字比较指令 cmpw测试为例,cmpw 将寄存器 rA和 rB内数据比较的结果(大于、小于、等于)放入条件寄存器 crx,其操作码为 0
7、x7C000000,测试用例数据如表 2所示。 表 2 字比较指令 cmpw测试用例数据 用例输入 cmpw 操作码 操作数 Ra 操作数 rB 预期输出 用例 1 Ox7C000000 123 123 0x02 用例 2 0x7C000000 123 133 0x08 用例 3 0x7C000000 123 113 0x04 cmpw指令功能测试的算法流程示意如图 3所示。请补全流程图 3中的执行操作。 (分数:5.00)_嵌入式系统设计师-29 答案解析(总分:30.00,做题时间:90 分钟)一、试题一(总题数:1,分数:15.00)阅读以下说明,回答下列问题。 说明 在某嵌入式处理器上
8、,编写以下两段程序(编译选项中,存储采用 4字节对齐方式)。 程序段 1: struct student1 char name10; long sno; char sex; float score4; *p1, a1, b1; 程序段 2: union student2 char name10; long sno; char sex; float score4; *p2, a2, b2; 汉诺塔问题说明:有 n个盘子在 A处,盘子从小到大,最上面的盘子最小,程序要把这 n个盘子从 A处搬到 C处,可以在 B处暂存,但任何时候都不能出现大的盘子压在小的盘子上面的情况。 下列是一段求解汉诺塔问题的
9、 C语言程序。 #include stdio.h void move(int n, char a, char c) static int Step=1; printf(“Step %2d: Disk %d %c- %cn“,Step,n,a,c); Step+; void Hanoi(int n, char a, char b, char c) if (n1) Hanoi(n-1, a, c, b); move(n, a, c); Hanoi(n-1, b, a, c) ; else move(n, a, c); void main() Hanoi(3,“A“, “B“, “C“); (分数:
10、15.00)(1).C语言函数的一般格式为: 函数类型 函数名 (参数列表) 函数体; 简答下述问题。 (1)函数类型的含义是什么? (2)参数列表的含义是什么? (3)C语言函数之间的参数如何传递?(分数:5.00)_正确答案:()解析:(1)的含义是:函数返回值的类型,无返回值时应写为 void。 (2)的含义是:函数的接口参数,可以为空,即表示没有参数,但函数名后面的()不能省略。 (3)C语言函数之间的参数传递是传值,是通过栈来传递的。 本题考查 C语言应用知识。 C语言函数的一般格式为: 函数类型 函数名 (参数列表) 函数体; 其中函数类型为函数返回值的类型,无返回值时应写 voi
11、d;参数列表为函数的接口参数,可以为空,即表示没有参数,但函数名后面的()不能省略。 C语言函数之间的参数传递是传值,是通过栈来传递的。调用时所有参数在栈中新开辟相应类型的单元并将实参值填入,函数中对参数的任何操作都是对栈中单元的操作,调用结束,栈中开辟的相应单元都会释放,并不影响实参变量的值。(2).回答问题。 (1)sizeof(struct student1)结果是多少? (2)sizeof(union student2)结果是多少? (3)变量 a2在程序段 2中定义,写出执行以下语句后的输出结果。 strcpy(a2. name, “zhangwei“); a2. Sex=“f“;
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 嵌入式 系统 设计师 29 答案 解析 DOC
