北京西门子西伯乐斯电子有限公司 (bsce)hardware engineer(硬件
选择题
1:下列表达式的值为0的是
2:定义一个有 4 个元素的一维整型数组,正确的是
3:可用于数据总线驱动的芯片是
4:在 CPU 停机方式的 DMA 操作中, CPU 与总线的关系是
5:C语言程序编译时,程序中的注释部分
6:表达式 !x 等效于
7:执行下列指令组后, A 的内容为( )
MOV A.#55H
ORL A.#00H
MOV A.#55H
ORL A.#00H
8:初始化一维数组 a 正确的语句是
9:已知字母‘A’的ASCII码为65,则‘C’的ASCII码为
10:8255A的置位/复位控制字只能适用于
11:标志寄存器的方向标志DF是用作控制
12:从磁盘文件读字符的fgetc函数,其函数原型(头)正确的是
13:下列关于8086传送类指令说法错误的是
14:若函数能被其它编译单位引用,那么函数定义时的存储类型应选用
简答题
15:const 有什么用途?(请至少说明两种)
16:下列程序运行的结果是 _______ 。
main()
{ struct cmples
{ int x;
int y;
}cnum [ 2 ] ={{1,4},{8,10}};
printf( ″ %d \ n ″ ,cnum [ 0 ] .y/cnum [ 0 ] .x *cnum [ 1 ] .y) ;
}
main()
{ struct cmples
{ int x;
int y;
}cnum [ 2 ] ={{1,4},{8,10}};
printf( ″ %d \ n ″ ,cnum [ 0 ] .y/cnum [ 0 ] .x *cnum [ 1 ] .y) ;
}
17:Write the program expr , which evaluates a reverse Polish expression from the command line, where each operator or operand is a separate argument. For example,
expr 2 3 4 + *
evaluates 2 X (3 + 4).
expr 2 3 4 + *
evaluates 2 X (3 + 4).
18:8259A中断控制器的功能是什么?
19:#include
void main()
{ int k=0; char c= ′ A ′ ;
do {
switch (c++) {
case ′ A ′ :k++; break;
case ′ B ′ :k--;
case ′ C ′ :k+=2;break;
case ′ D ′ :k=k%2;break;
case ′ E ′ :k=k*10;break;
default:k=k/3;
}
k++;
} while(c< ′ G ′ );
printf( ″ k=%d \ n ″ ,k);
} 输出结果: _______
void main()
{ int k=0; char c= ′ A ′ ;
do {
switch (c++) {
case ′ A ′ :k++; break;
case ′ B ′ :k--;
case ′ C ′ :k+=2;break;
case ′ D ′ :k=k%2;break;
case ′ E ′ :k=k*10;break;
default:k=k/3;
}
k++;
} while(c< ′ G ′ );
printf( ″ k=%d \ n ″ ,k);
} 输出结果: _______
20:EU与BIU各自的功能是什么?如何协同工作?
21:为什么说,采用中断方式进行数据传送时,在一定程度上实现了主机与外设的并行工作?
22:main()
{ int a=4,*p;
p=&a;
a++ ;
*p=*p+5;
printf( “ a=%d\n ” ,a);
}程序运行的结果是 ____________
{ int a=4,*p;
p=&a;
a++ ;
*p=*p+5;
printf( “ a=%d\n ” ,a);
}程序运行的结果是 ____________
23:简述 8086CPU 中 20 位物理地址形成过程。
24:LED数码管显示器共阴极和共阳极的接法主要区别是什么?
25:char * const p;
char const * p
const char *p
上述三个有什么区别?
char const * p
const char *p
上述三个有什么区别?