歌尔声学笔试

1 pwm是什么? 2 usb按照传输速率分哪几种,作用是什么 3 volatile的作用是什么? 4 改错:char *p=“hello”;char *q="world";char *k=strcat(p,q); 最后一道编程题,20分。

脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。 USB 1.x (包括1.0,1.1):使用全速模式(FS :12Mb/s)和低速模式(LS :1.5Mb/s)。例如鼠标、键盘就是低速设备运行,而打印机、扫描仪就使用全速设备模式运行存在12M 的传输速度瓶颈

USB 2.0将设备之间的数据传输速度增加到了480Mbps ,快过USB 1.x的40倍,但是最初的USB2.0的速度只是定义为240Mbps ,但是技术队伍通过努力,把速度提高到了480Mbps 。

关键字volatile 有什么含意并给出三个不同的例子。 一个定义为volatile 的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile 变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automatic variables) 3). 多线程应用中被几个任务共享的变量

1.struct 和class 的区别

从定义上来说,有两点区别:

(1)默认继承权限,如果没有特殊说明,来自Class 的继承按照private 继承处理; 来自struct 的继承按照public 继承处理。

(2)成员的默认访问权限。Class 成员默认为private 权限;struct 默认为public 权限。

2. 输出结果题(歌尔和软控都考了) void main() {

int a=10,b,c,d;

b=a++;

c=++a; d=10*a++; printf("b,c,d: %d, %d, %d\n",b,c,d);

}

10 11 100 总体来说 x++的意义就是将包含x++的语句分成两条,比如说这样: a = x++;

这条语句实际上可以这么看:

a = x; x = x + 1; 因为加1的工作逻辑上可以看成是包含x++的语句结束之后执行的。 ++x就比较简单了,简单的将其看作为是(x=x+1)就行了,比如说: a = ++x;

实际上可以看做

a = (x=x+1);

实际代码这么写也可以,没区别。

至于某些不负责任的考试和文章中可能会提到类似i=i++;这样的语句,

实际上是不符合c/c++语法的,这是一项未定义操作,undefined behaviour ,实际结果编译器可以根据情况自己判断,甚至包括直接报错。

i++和++i都是把i 加1,不同的是i++返回值是未加1前的值,++i返回值是加1后的值

3. 引用和指针的区别 指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;引用本身就是目标变量的别名,对引用的操作就相当于对目标变量的操作。

4.ifconfig 的作用(手动启动、观察与修改网络接口的相关参数,包括IP 地址以及MTU 大小等)

ifconfig 是linux 中用于显示或配置网络设备(网络接口卡)的命令,英文全称是network interfaces configuring 。配置网卡的IP 地址语法例:ifconfig eth0 192.168.0.1 netmask 255.255.255.0

下列提法中,不属于ifconfig 命令作用范围的是 D 。

A 配置本地回环地址

B 配置网卡的IP 地址

C 激活网络适配器

D 加载网卡到内核中 5.int main(int argc, char *argv[])

{

struct a1

{

int i1;

int i2;//4

char c1;

char c2;//2

};

struct a2

{

int i3;

char c3;

char c4;

int i4;

};

struct a3

{

char c5;

short s1;

short s2;

char c6;

}; printf("%d,%d,%d\n",sizeof(a1),sizeof(a2),sizeof(a3));//答案是12,12,8

return 0;

}

6.union{int i;char c;long l;}Date; struct

{

int i1;

Date d;

char c1;

}T;

printf("%d\n",sizeof(T)+max(Date));

具体题目可能记不得了,大体就是这样

7. 进程与线程的区别?

进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动, 进程是系统进行资源分配和调度的一个独立单位.

线程是进程的一个实体, 是CPU 调度和分派的基本单位, 它是比进程更小的能独立运行的基本单位. 线程自己基本上不拥有系统资源, 只拥有一

点在运行中必不可少的资源(如程序计数器, 一组寄存器和栈), 但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.

一个线程可以创建和撤销另一个线程; 同一个进程中的多个线程之间可以并发执行

8. 软件开发中的模型 瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

快速原型模型(Rapid Prototype Model)

快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。

通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。 增量模型(Incremental Model)

在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成. 增量模型在各个阶段并不交付一个可运行的完整产品,而是交付满足客户需求的一个子集的可运行产品。

螺旋模型(Spiral Model)

将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。

喷泉模型(fountain model)

也称面向对象的生存期模型, OO模型)

喷泉模型与传统的结构化生存期比较,具有更多的增量和迭代性质,生存期的各个阶段可以相互重叠和多次反复,而且在项目的整个生存期中还可以嵌入子生存期。就像水喷上去又可以落下来,可以落在中间,也可以落在最底部。

智能模型(四代技术(4GL )

智能模型拥有一组工具(如数据查询、报表生成、数据处理、屏幕定义、代码生成、高层图形功能及电子表格等),每个工具都能使开发人员在高层次上定义软件的某些特性,并把开发人员定义的这些软件自动地生成为源代码。

混合模型(hybrid model)

过程开发模型又叫混合模型(hybrid model),或元模型(meta-model ), 把几种不同模型组合成一种混合模型,它允许一个项目能沿着最有效的路径发展,这就是过程开发模型(或混合模型)。实际上,一些软件开发单位都是使用几种不同的开发方法组成他们自己的混合模型。 各种模型的优点和缺点

瀑布模型文档驱动系统可能不满足客户的需求

快速原型模型关注满足客户需求可能导致系统设计差、效率低,难于维护

增量模型开发早期反馈及时,易于维护需要开放式体系结构,可能会设计差、效率低

螺旋模型风险驱动风险分析人员需要有经验且经过充分训练

9. 死锁的必要的条件,如何避免死锁

1)互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。

2)请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。

3)不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。

4)环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,•••,Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,……,Pn 正在等待已被P0占用的资源。

在资源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免发生死锁。

10. 输出结果题: unsigned int i=20;

int j=-30;

if(i+j>0)

printf("Positive!\n");

else

printf("Not Positive!\n");

11.32位操作系统针对的32位的CPU 设计

12. 进程有三种状态: C 。

A 准备态、执行态和退出态

B 精确态、模糊态和随机态

C 运行态、就绪态和等待态

D 手工态、自动态和自由态

13. 终止一个前台进程可能用到的命令和操作 A 。 A kill

B ;+C C shut down

D halt

14. 程序改错题, 如果错误请改正,如果正确请说出函数的功能(软控) void *fun(char *src,int len) {

char dest[1024]; memcpy(dest,src,len);

return dest;

}

15. SPI总线有几根,分别是什么?

MOTOROLA 公司的SPI 总线的基本信号线为3根传输线,即SI 、SO 、SCK 。传输的速率由时钟信号SCK 决定,SI 为数据输入、SO 为数据输出。

16. 输出结果分析

#include

class base

{

public:

base(int i);

~base();

private:

int m_i;

};

base::base(int i):m_i(i)

{

printf("step %d\n",i);

}

base::~base()

{

printf("step %d\n",m_i);

}

base base1(5);

void main()

{

printf("step 1\n");

base *a=new base(4);

delete a;

}

17. 有关指针的一些题型,给一个变量a, 定义整型变量,指针变量等

18. 中断子程序评价

1 pwm是什么? 2 usb按照传输速率分哪几种,作用是什么 3 volatile的作用是什么? 4 改错:char *p=“hello”;char *q="world";char *k=strcat(p,q); 最后一道编程题,20分。

脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。 USB 1.x (包括1.0,1.1):使用全速模式(FS :12Mb/s)和低速模式(LS :1.5Mb/s)。例如鼠标、键盘就是低速设备运行,而打印机、扫描仪就使用全速设备模式运行存在12M 的传输速度瓶颈

USB 2.0将设备之间的数据传输速度增加到了480Mbps ,快过USB 1.x的40倍,但是最初的USB2.0的速度只是定义为240Mbps ,但是技术队伍通过努力,把速度提高到了480Mbps 。

关键字volatile 有什么含意并给出三个不同的例子。 一个定义为volatile 的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile 变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automatic variables) 3). 多线程应用中被几个任务共享的变量

1.struct 和class 的区别

从定义上来说,有两点区别:

(1)默认继承权限,如果没有特殊说明,来自Class 的继承按照private 继承处理; 来自struct 的继承按照public 继承处理。

(2)成员的默认访问权限。Class 成员默认为private 权限;struct 默认为public 权限。

2. 输出结果题(歌尔和软控都考了) void main() {

int a=10,b,c,d;

b=a++;

c=++a; d=10*a++; printf("b,c,d: %d, %d, %d\n",b,c,d);

}

10 11 100 总体来说 x++的意义就是将包含x++的语句分成两条,比如说这样: a = x++;

这条语句实际上可以这么看:

a = x; x = x + 1; 因为加1的工作逻辑上可以看成是包含x++的语句结束之后执行的。 ++x就比较简单了,简单的将其看作为是(x=x+1)就行了,比如说: a = ++x;

实际上可以看做

a = (x=x+1);

实际代码这么写也可以,没区别。

至于某些不负责任的考试和文章中可能会提到类似i=i++;这样的语句,

实际上是不符合c/c++语法的,这是一项未定义操作,undefined behaviour ,实际结果编译器可以根据情况自己判断,甚至包括直接报错。

i++和++i都是把i 加1,不同的是i++返回值是未加1前的值,++i返回值是加1后的值

3. 引用和指针的区别 指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;引用本身就是目标变量的别名,对引用的操作就相当于对目标变量的操作。

4.ifconfig 的作用(手动启动、观察与修改网络接口的相关参数,包括IP 地址以及MTU 大小等)

ifconfig 是linux 中用于显示或配置网络设备(网络接口卡)的命令,英文全称是network interfaces configuring 。配置网卡的IP 地址语法例:ifconfig eth0 192.168.0.1 netmask 255.255.255.0

下列提法中,不属于ifconfig 命令作用范围的是 D 。

A 配置本地回环地址

B 配置网卡的IP 地址

C 激活网络适配器

D 加载网卡到内核中 5.int main(int argc, char *argv[])

{

struct a1

{

int i1;

int i2;//4

char c1;

char c2;//2

};

struct a2

{

int i3;

char c3;

char c4;

int i4;

};

struct a3

{

char c5;

short s1;

short s2;

char c6;

}; printf("%d,%d,%d\n",sizeof(a1),sizeof(a2),sizeof(a3));//答案是12,12,8

return 0;

}

6.union{int i;char c;long l;}Date; struct

{

int i1;

Date d;

char c1;

}T;

printf("%d\n",sizeof(T)+max(Date));

具体题目可能记不得了,大体就是这样

7. 进程与线程的区别?

进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动, 进程是系统进行资源分配和调度的一个独立单位.

线程是进程的一个实体, 是CPU 调度和分派的基本单位, 它是比进程更小的能独立运行的基本单位. 线程自己基本上不拥有系统资源, 只拥有一

点在运行中必不可少的资源(如程序计数器, 一组寄存器和栈), 但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.

一个线程可以创建和撤销另一个线程; 同一个进程中的多个线程之间可以并发执行

8. 软件开发中的模型 瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

快速原型模型(Rapid Prototype Model)

快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。

通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。 增量模型(Incremental Model)

在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成. 增量模型在各个阶段并不交付一个可运行的完整产品,而是交付满足客户需求的一个子集的可运行产品。

螺旋模型(Spiral Model)

将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。

喷泉模型(fountain model)

也称面向对象的生存期模型, OO模型)

喷泉模型与传统的结构化生存期比较,具有更多的增量和迭代性质,生存期的各个阶段可以相互重叠和多次反复,而且在项目的整个生存期中还可以嵌入子生存期。就像水喷上去又可以落下来,可以落在中间,也可以落在最底部。

智能模型(四代技术(4GL )

智能模型拥有一组工具(如数据查询、报表生成、数据处理、屏幕定义、代码生成、高层图形功能及电子表格等),每个工具都能使开发人员在高层次上定义软件的某些特性,并把开发人员定义的这些软件自动地生成为源代码。

混合模型(hybrid model)

过程开发模型又叫混合模型(hybrid model),或元模型(meta-model ), 把几种不同模型组合成一种混合模型,它允许一个项目能沿着最有效的路径发展,这就是过程开发模型(或混合模型)。实际上,一些软件开发单位都是使用几种不同的开发方法组成他们自己的混合模型。 各种模型的优点和缺点

瀑布模型文档驱动系统可能不满足客户的需求

快速原型模型关注满足客户需求可能导致系统设计差、效率低,难于维护

增量模型开发早期反馈及时,易于维护需要开放式体系结构,可能会设计差、效率低

螺旋模型风险驱动风险分析人员需要有经验且经过充分训练

9. 死锁的必要的条件,如何避免死锁

1)互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。

2)请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。

3)不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。

4)环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,•••,Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,……,Pn 正在等待已被P0占用的资源。

在资源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免发生死锁。

10. 输出结果题: unsigned int i=20;

int j=-30;

if(i+j>0)

printf("Positive!\n");

else

printf("Not Positive!\n");

11.32位操作系统针对的32位的CPU 设计

12. 进程有三种状态: C 。

A 准备态、执行态和退出态

B 精确态、模糊态和随机态

C 运行态、就绪态和等待态

D 手工态、自动态和自由态

13. 终止一个前台进程可能用到的命令和操作 A 。 A kill

B ;+C C shut down

D halt

14. 程序改错题, 如果错误请改正,如果正确请说出函数的功能(软控) void *fun(char *src,int len) {

char dest[1024]; memcpy(dest,src,len);

return dest;

}

15. SPI总线有几根,分别是什么?

MOTOROLA 公司的SPI 总线的基本信号线为3根传输线,即SI 、SO 、SCK 。传输的速率由时钟信号SCK 决定,SI 为数据输入、SO 为数据输出。

16. 输出结果分析

#include

class base

{

public:

base(int i);

~base();

private:

int m_i;

};

base::base(int i):m_i(i)

{

printf("step %d\n",i);

}

base::~base()

{

printf("step %d\n",m_i);

}

base base1(5);

void main()

{

printf("step 1\n");

base *a=new base(4);

delete a;

}

17. 有关指针的一些题型,给一个变量a, 定义整型变量,指针变量等

18. 中断子程序评价


相关内容

  • 2011年吉首大学"专升本"音乐类理论综合考试大纲
  • 2011年吉首大学"专升本"音乐类理论综合考试大纲 一.考试方式:闭卷笔试答题. 二.考试时间:180分钟 三. 试卷分值:150分 四. 考试内容及知识点分布 1.考试内容包括<和声学>.<曲式与作品分析>.<西方音乐史>的综合测 评.考察学 ...

  • 四川音乐学院2016年本科招生简章(省外)
  • 四川音乐学院2016年本科招生简章(省外) 一.学院概况 四川音乐学院,其前身是创建于1939年的"四川省立戏剧教育实验学校", 经历了"四川省立音乐实验学校"."四川省立技艺专科学校"."四川省立艺术专科学校".&qu ...

  • 天津大学建筑学各专业考研内容简介
  • 天津大学全国统考硕士入学考试业务课程大纲 适用专业名称:建筑历史与理论.建筑设计及其理论.城市规划与设计. 课程编号:728 课程名称:建筑理论综合 一.考试的总体要求 考试内容包括<建筑历史>(含中.外建筑史)和<城市规划原理>两个部分.考试出题以主要参考书涉及的内容为主, ...

  • 中传播音主持艺术学考研近年分数线是多少
  • 中传播音主持艺术学考研近年分数线是 多少? 本文系统介绍中传播音主持艺术学考研难度,中传播音主持艺术学专业就业,中传播音主持艺术学考研辅导,中传播音主持艺术学考研参考书,中传播音主持艺术学考研专业课五大方面的问题,凯程中传播音主持艺术学考研老师给大家详细讲解.特别申明,以下信息绝对准确,凯程就是王牌 ...

  • 宁波大学2014年艺术类招生简章
  • 宁波大学2014年艺术类招生简章 宁波大学坐落于美丽的港口城市.计划单列市.副省级城市--浙江省宁波市,是浙江省.教育部和宁波市共建高校.校名由邓小平同志亲笔题写.学校涵盖经.法.教.文.史.理.工.农.医.管.艺等十一大学科门类,拥有博士.硕士.学士和专业硕士学位授予权和研究生免试推荐权,具有外国 ...

  • 重庆选调生
  • 重庆市定向选调全国"985"."211"高校 2010年应届优秀大学毕业生到基层工作简章 为认真贯彻落实党的十七大.十七届四中全会和全国培养选拔年轻干部工作座谈会精神,努力建设适应进一步扩大开放,加快建设内陆开放高地需要的高素质干部队伍,为推动重庆更好更快发展 ...

  • 应用物理学专业学习指南终稿
  • 序 歌德说: " 如果你想与这个世界结合, 没有比科学更可靠的途径. " 我们在浩瀚无垠的宇宙中生活着, 每一个人都难免会问出几个最基本. 最有意义. 最值得研究的科学问题, 那就是: " 我是谁? 我来自何方? 我去向何处? " 这也是古希腊哲学家苏格拉底提 ...

  • 分析小空间室内声学设计需要注意的问题
  • 分析小空间室内声学设计需要注意的问题 众所周知,小空间声学设计是建筑声学设计中的一个大类,它主要包括录音室.琴房.家庭影院.小型专业混音室等具有较高声学要求的空间.由于其空间小的特点,声音在其中的传播规律与剧院等专业观演建筑空间有着显著的区别,小空间容易引起驻波.振颤回声.声染色等声学缺陷小空间,其 ...

  • 温度场声学测量方法与技术的文献综述 16页
  • 温度场声学测量方法与技术 文献综述 一.温度测量的意义及现状 人类自诞生之日起就不得不与"冷.热"打交道,并在长期的生产实践过程中,逐步建立起了"温度"的概念.为了保障生产.适应生存和不断提高生活质量,人类对"温度"的实质和定量测量的研究从 ...