笔试题目
1.设计一个重采样系统,说明如何anti-alias
2.y1(n)=x(2n),y2(n)=x(n/2),问:
如果y1为周期函数,那么x是否为周期函数?
如果x为周期函数,那么y1是否为周期函数?
如果y2为周期函数,那么x是否为周期函数?
如果x为周期函数,那么y2是否为周期函数?
3.如果模拟信号的带宽为5kHz,要用8k的采样率,怎么办
4.某个程序在一个嵌入式系统(200M的CPU,50M的SDRAM)中已经最优化了,换到另一个系统(300M的CPU,50M的SDRAM)中运行,还需要优化吗?
5.x^4+a*x^3+x^2+c*x+d最少需要做几次乘法
6.三个float:a,b,c
问值:
(a+b)+c == (b+a)+c
(a+b)+c == (a+c)+b
7.把一个链表反向填空
8.下面哪种排序法对12354最快?
A. quick sort
B. buble sort
C. merge sort
9.哪种结构平均来讲获取一个值最快?
A. binary tree
B. hash table
C. stack
10.
#include < iostream.h >
struct bit
{
int a: 3 ;
int b: 2 ;
int c: 3 ;
};
int main( int argc, char * argv[])
{
bit s;
char * c = ( char * ) & s;
* c = 0x99 ;
cout << s.a << s.b << s.c;
return 0 ;
}
Output: ?
11.挑bug,在linux下运行:
char * reverse( char * str)
{
int len = 0 , i = 0 ;
char * pstr = str, * ptemp, * pd;
while ( *++ pstr)
len ++ ;
pstr -- ;
// ptemp=(char*)malloc(len+1);
ptemp = ( char * )malloc(len + 1 );
pd = ptemp;
while (len -- )
{
* ptemp =* pstr;
ptemp ++ ;
pstr -- ;
i ++ ;
}
* ptemp =* pstr;
ptemp ++ ;
* ptemp = ' \0 ' ;
return pd;
}
main()
{
char string [ 40 ] = " Hello World! " ;
char * pstr = string ;
printf( " %s " , pstr);
printf( " %s " , reverse(pstr));
}
实验室笔试题
1.写出下列信号的奈亏斯特频率
(1) f(t) = 1+cos(2000pait) + sin(4000pait)
(2) f(t) = sin(4000pait)/pait
(3) f(t) =(sin(4000pait)的平方)/pait
2.有两个线程
{
while ( 1 )
{
GeneratePacket();
PutPacketIntoBuffer();
Signal(customer);
}
}
void customer()
{
while ( 1 )
{
WaitForSignal();
if (PacketInBuffer > 10 )
{
ReadAllPackets();
ProcessPackets();
}
}
}
(1)有没有其他方法可以提高程序的性能
(2)可不可以不使用信号之类的机制来实现上述的功能
3.优化下面的程序
(0)sum=0
(1)I=1
(2)T1=4*I
(3)T2=address(A)-4
(4)T3=T2[T1]
(5)T4=address(B)-4
(6)T5=4*I
(7)T6=T4[T5]
(8)T7=T3*T5
(9)sum=sum+T6
(10)I=I+1
(11)IF I<20 GOTO (2)
Intel校园招聘
第一部分:
6道智力+1道简答+1个编程(走迷宫)+两个百字短文(一个是根据试卷上对Intel一个产品
的介绍来写一个summary,还有一个是写自己对IT发展趋势的见解)
第二部分:
5道简答:
1.叙述内存泄漏的原理和常用解决方法
2.UNIX中的Zombie Process是怎么形成的,为啥用kill杀不掉,应该怎样避免
3.叙述滑动窗口的原理
4.实模式和保护模式的区别
5.实现strcpy代码
6.已经实现了一个TCP,怎么测试它
2005Intel面试题
1. 编译中的问题:全局变量如int i=5; int*(pf)()=foo; 分别在何时被初始化?设计时候如何具体的实现。
2. OS相关的问题,内存访问,cache等(包括cache在整个系统中的位置,画出来,并解释)
3. 解释例如mov ax,100H 这样一条指令的cpu, os, memory等都完成了什么样的工作。
4. Strlen()的C语言实现,不能使用任何变量。
5. 编译中display表的一些问题
6. 一个hash函数,输入随机,现发生冲突,如数据集中在某几条中,问怎样处理hash函数保证高效的访问,怎样实现?
7. 把Switch()case…语句翻译成三元组。
8. 一个byte(用C语言实现计数其中1的个数),给出最高效的实现方法。(位域)或者查表最快的;
9. C语言参数的入栈顺序?为什么这么实现?
10. C语言中字符串的翻转,最高效率(时间和空间)的实现