Search test library by skills or roles
⌘ K

About the test:

嵌入式C测试使用基于方案的MCQ问题来评估候选人开发C/嵌入式C驱动程序/库和编码问题的能力,以评估动手C编程技能。代码追踪MCQ问题评估了嵌入式C基础知识(数据类型,变量,指针),I/O硬件地址,固定点算术操作,访问地址空间,预处理程序指令以及对对象面向对象的面向对象的编程原理在固件开发中的应用。

Covered skills:

  • C基础知识(变量;数据类型;声明;功能)
  • 指针(带有数组;结构;工会)
  • c中的I/O和嵌入式系统中的相关性
  • 汇编器和编译器的内部组件
  • 编译器优化
  • 标题保护
  • 嵌入式C基础(寄存器;指令;驾驶员)
  • 位操作(包装数据;打开包装数据;位操纵)
  • 面向对象的原理(多态性;继承;封装)
  • 调试和错误处理
  • 交叉编译工具链
  • 引导序列

9 reasons why
9 reasons why

Adaface 嵌入式C在线测试 is the most accurate way to shortlist 嵌入式软件工程师s



Reason #1

Tests for on-the-job skills

The 嵌入式C在线测试 helps recruiters and hiring managers identify qualified candidates from a pool of resumes, and helps in taking objective hiring decisions. It reduces the administrative overhead of interviewing too many candidates and saves time by filtering out unqualified candidates at the first step of the hiring process.

The test screens for the following skills that hiring managers look for in candidates:

  • 能够编写结构良好且高效的C代码
  • 熟悉嵌入式系统以及登记册,指令和驱动程序的使用
  • 熟练在各种情况下与指针合作,包括阵列,结构和工会
  • 执行位操作的能力,例如包装和解开包装数据以及位操作
  • 了解C中的I/O及其与嵌入式系统的相关性
  • 了解面向对象的原理等多态性,继承和封装的知识
  • 意识到委员会和编译器内部的意识
  • 精通调试和错误处理
  • 在编译器的帮助下优化代码的能力
  • 具有交叉编译工具链的经验
  • 了解标头保护
  • 了解嵌入式系统中的引导序列
Reason #2

No trick questions

no trick questions

Traditional assessment tools use trick questions and puzzles for the screening, which creates a lot of frustration among candidates about having to go through irrelevant screening assessments.

View sample questions

The main reason we started Adaface is that traditional pre-employment assessment platforms are not a fair way for companies to evaluate candidates. At Adaface, our mission is to help companies find great candidates by assessing on-the-job skills required for a role.

Why we started Adaface
Reason #3

Non-googleable questions

We have a very high focus on the quality of questions that test for on-the-job skills. Every question is non-googleable and we have a very high bar for the level of subject matter experts we onboard to create these questions. We have crawlers to check if any of the questions are leaked online. If/ when a question gets leaked, we get an alert. We change the question for you & let you know.

How we design questions

这些只是我们库中有10,000多个问题的一个小样本。关于此的实际问题 嵌入式C检验 将是不可行的.

🧐 Question

Easy

Logic Black Box
Solve
Consider the following logic box. There are three inputs A, B, C and three outputs not A, not B and not C (not A = !A, not B = !B, not C = !C).

Is it possible to achieve the expected outputs from the inputs using:

- Only AND and OR gates
- Just two (2) NOT gates
- No NAND, NOR, XOR, or XNOR gates
 image

Medium

Memory Map
Memory Architecture
Solve
Review the following Embedded Systems code and memory map of 16-bit microcontroller:
 image
 image
Here are the specifications of the microcontroller:

- The stack grows from area D, whereas the program and static variables are stored in area C
- ‘int’ in the system is a 16-bit number
- There is no operating system and no memory protection
- The program is compiled and loaded into area C
Pick the correct statements:

A: first_var, second_var and input will be in area D
B: first_var and second_var will be in area C, input will be in area D
C: If the contents of 0x0010 at the start of the program is 7, the program will print 0 and exit
D: If the contents of 0x0010 at the start of the program is 42, the program will print 0 and exit
E: If the contents of 0x0010 at the start of the program is 42, the program will overflow the stack overwriting the program and static variables region
F: If the program overflows and overwrites the program and static variables region, arbitrary data is executed as if it is the program, causing unpredictable results

Medium

Multi-tasking
Multi-tasking
Solve
Review the following Embedded Systems code:
 image
Here’s the specification for the program:
- first_var and second_var are global variables shared among several threads
- first_lock and second_lock are mutex locks that protect access to first_var and second_var
- Reads and writes to variables first_var and second_var are not guaranteed to be atomic
- No locks must be acquired unnecessarily
- Acquire second_var lock first before acquiring first_var lock by any thread that is going to use both first_var and second_var
Assume that if a thread attempts to acquire a lock it already holds, then it is immediately granted the lock. Pick the correct statements:

A: The provided code does not meet the specification completely since second_lock is not acquired before acquiring first_lock for procedure 'foo'

B: Replacing foo with logic of foo1 makes sure locks are not acquired unnecessarily and  second_lock is acquired before acquiring first_lock

C: Replacing foo with logic of foo1 makes sure second_lock is acquired before acquiring first_lock but there are cases when second_lock is acquired unnecessarily (when first_var < input)

D: Replacing foo with logic of foo2 makes sure locks are not acquired unnecessarily

E: Replacing foo with logic of foo2 is optimized version of foo1 but there are cases when second_lock is still acquired unnecessarily (when first_var value changes from the time ‘res’ value is computed and by the first_lock is acquired again.

Medium

Memory Allocation
Solve
Check the following three C functions:
 image
Which among these will likely cause issues with pointers?

Medium

Pointers and Structs
Solve
What is the output of the following C code?
 image

Medium

Strings
Strings
Solve
What is the output of the following C code?
 image

Easy

Registration Queue
Logic
Queues
Solve
We want to register students for the next semester. All students have a receipt which shows the amount pending for the previous semester. A positive amount (or zero) represents that the student has paid extra fees, and a negative amount represents that they have pending fees to be paid. The students are in a queue for the registration. We want to arrange the students in a way such that the students who have a positive amount on the receipt get registered first as compared to the students who have a negative amount. We are given a queue in the form of an array containing the pending amount.
For example, if the initial queue is [20, 70, -40, 30, -10], then the final queue will be [20, 70, 30, -40, -10]. Note that the sequence of students should not be changed while arranging them unless required to meet the condition.
⚠️⚠️⚠️ Note:
- The first line of the input is the length of the array. The second line contains all the elements of the array.
- The input is already parsed into an array of "strings" and passed to a function. You will need to convert string to integer/number type inside the function.
- You need to "print" the final result (not return it) to pass the test cases.

For the example discussed above, the input will be:
5
20 70 -40 30 -10

Your code needs to print the following to the standard output:
20 70 30 -40 -10

Medium

Visitors Count
Strings
Logic
Solve
A manager hires a staff member to keep a record of the number of men, women, and children visiting the museum daily. The staff will note W if any women visit, M for men, and C for children. You need to write code that takes the string that represents the visits and prints the count of men, woman and children. The sequencing should be in decreasing order. 
Example:

Input:
WWMMWWCCC

Expected Output: 
4W3C2M

Explanation: 
‘W’ has the highest count, then ‘C’, then ‘M’. 
⚠️⚠️⚠️ Note:
- The input is already parsed and passed to a function.
- You need to "print" the final result (not return it) to pass the test cases.
- If the input is- “MMW”, then the expected output is "2M1W" since there is no ‘C’.
- If any of them have the same count, the output should follow this order - M, W, C.
🧐 Question🔧 Skill

Easy

Logic Black Box

3 mins

Embedded Systems
Solve

Medium

Memory Map
Memory Architecture

3 mins

Embedded Systems
Solve

Medium

Multi-tasking
Multi-tasking

2 mins

Embedded Systems
Solve

Medium

Memory Allocation

2 mins

C
Solve

Medium

Pointers and Structs

2 mins

C
Solve

Medium

Strings
Strings

2 mins

C
Solve

Easy

Registration Queue
Logic
Queues

30 mins

Coding
Solve

Medium

Visitors Count
Strings
Logic

30 mins

Coding
Solve
🧐 Question🔧 Skill💪 Difficulty⌛ Time
Logic Black Box
Embedded Systems
Easy3 mins
Solve
Memory Map
Memory Architecture
Embedded Systems
Medium3 mins
Solve
Multi-tasking
Multi-tasking
Embedded Systems
Medium2 mins
Solve
Memory Allocation
C
Medium2 mins
Solve
Pointers and Structs
C
Medium2 mins
Solve
Strings
Strings
C
Medium2 mins
Solve
Registration Queue
Logic
Queues
Coding
Easy30 minsSolve
Visitors Count
Strings
Logic
Coding
Medium30 minsSolve
Reason #4

1200+ customers in 75 countries

customers in 75 countries
Brandon

借助 Adaface,我们能够将初步筛选流程优化高达 75% 以上,为招聘经理和我们的人才招聘团队节省了宝贵的时间!


Brandon Lee, 人事主管, Love, Bonito

Reason #5

Designed for elimination, not selection

The most important thing while implementing the pre-employment 嵌入式C检验 in your hiring process is that it is an elimination tool, not a selection tool. In other words: you want to use the test to eliminate the candidates who do poorly on the test, not to select the candidates who come out at the top. While they are super valuable, pre-employment tests do not paint the entire picture of a candidate’s abilities, knowledge, and motivations. Multiple easy questions are more predictive of a candidate's ability than fewer hard questions. Harder questions are often "trick" based questions, which do not provide any meaningful signal about the candidate's skillset.

Science behind Adaface tests
Reason #6

1 click candidate invites

Email invites: You can send candidates an email invite to the 嵌入式C检验 from your dashboard by entering their email address.

Public link: You can create a public link for each test that you can share with candidates.

API or integrations: You can invite candidates directly from your ATS by using our pre-built integrations with popular ATS systems or building a custom integration with your in-house ATS.

invite candidates
Reason #7

Detailed scorecards & benchmarks

查看样本记分卡
Reason #8

High completion rate

Adaface tests are conversational, low-stress, and take just 25-40 mins to complete.

This is why Adaface has the highest test-completion rate (86%), which is more than 2x better than traditional assessments.

test completion rate
Reason #9

Advanced Proctoring


Learn more

About the 嵌入式C在线测试

Why you should use 嵌入式C在线测试?

The 嵌入式C检验 makes use of scenario-based questions to test for on-the-job skills as opposed to theoretical knowledge, ensuring that candidates who do well on this screening test have the relavant skills. The questions are designed to covered following on-the-job aspects:

  • C基础知识的专业知识,包括变量,数据类型,声明和功能
  • 对嵌入式C基础知识的深入了解,包括登记册,指令和驱动程序
  • 熟练使用指针,包括阵列,结构和工会
  • 对位操作的深入了解,包括包装数据,解开包装数据和位操作
  • 在C中具有I/O操作的经验及其在嵌入式系统中的相关性
  • 熟悉面向对象的原理,例如多态性,继承和封装
  • 了解汇编器和编译器的内部
  • 有效调试代码和处理错误的能力
  • 编译器优化技术的知识
  • 具有交叉编译工具链的经验

Once the test is sent to a candidate, the candidate receives a link in email to take the test. For each candidate, you will receive a detailed report with skills breakdown and benchmarks to shortlist the top candidates from your pool.

What topics are covered in the 嵌入式C在线测试?

  • 嵌入式C基础:

    嵌入式C中的掌握寄存器,指令和驱动程序对于控制和与硬件组件(例如微控制器和外围)相互作用至关重要。

  • pointers:</p> <h4> pointers:</h4> </h4> <</h4> <<</h4> P>指针是C中有强大的功能,可以使操作和访问内存地址的访问。对使用数组,结构和工会的指针的知识对于内存管理和有效的数据处理很重要。</p> <h4>位操作:

    位操作涉及包装和在位级别解开包装数据,以及执行各种位操作,例如设置,清除或切换特定位。该技能在嵌入式系统中很重要,其中记忆和计算资源受到限制。

  • i/o在C中以及嵌入式系统中的相关性:

    了解C中的输入/输出操作以及它们如何与嵌入式系统有关,对于开发实时应用程序和硬件和软件组件之间的有效通信至关重要。

  • 面向对象的原理:

    知识的知识,例如多态性,遗传性等多态性原理,并封装允许开发可重复使用的和模块化的代码,增强代码组织和可维护性。

  • 汇编器和编译器的内部内容:

    了解汇编器和编译器的内部内容,可为您提供洞察力汇编过程并启用对代码的优化,以提高性能和效率。

  • 调试和错误处理:

    在调试技术和错误处理方面的熟练程度对于故障排除和识别和解决问题至关重要嵌入式C程序,确保可靠且可靠的应用程序。

  • 编译器优化:

    知道如何使用特定于编译器的功能和选项来了解如何优化代码,从而使更快,更有效的二进制文件生成

  • 交叉编译工具链:

    跨编译工具链的知识对于在一个平台上开发软件并为另一个平台生成可执行文件,这是常见的,这是常见的,这是必不可少的在嵌入式系统域中。

  • 标头保护:

    了解标头保护技术有助于防止诸如多重包含和标头文件之间的冲突,确保嵌入式C项目中的更清洁和更易于管理的代码。

  • 引导序列:

    熟悉嵌入式系统的引导序列对于理解系统启动过程,初始化硬件组件并执行主应用程序代码很重要。

  • Full list of covered topics

    The actual topics of the questions in the final test will depend on your job description and requirements. However, here's a list of topics you can expect the questions for 嵌入式C检验 to be based on.

    变量
    数据类型
    声明
    功能
    寄存器
    指令
    司机
    指针
    数组
    结构
    工会
    位操作
    包装数据
    解开数据
    位操纵
    I/O在C中
    嵌入式系统中的相关性
    面向对象的原则
    多态性
    遗产
    封装
    汇编器
    编译器
    调试
    错误处理
    编译器优化
    交叉编译工具链
    标题保护
    引导序列

What roles can I use the 嵌入式C在线测试 for?

  • 嵌入式软件工程师
  • 固件工程师
  • 嵌入式系统开发人员
  • 微控制器工程师
  • 嵌入式系统顾问
  • 电子和电工工程师

How is the 嵌入式C在线测试 customized for senior candidates?

For intermediate/ experienced candidates, we customize the assessment questions to include advanced topics and increase the difficulty level of the questions. This might include adding questions on topics like

  • C的标头保护专业知识
  • 了解嵌入式系统中的引导序列
  • 熟练处理嵌入式系统中的中断和计时器
  • 使用各种通信协议(SPI,I2C,UART)的经验
  • 了解嵌入式系统中的软件硬件交互
  • 实时操作系统(RTO)及其实施知识
  • 熟悉低级设备驱动程序和外围编程
  • 熟练固件开发和调试
  • 具有嵌入式系统的低功率优化技术的经验
  • 能够执行系统级测试和验证
  • 在设计和实施嵌入式系统的有效算法方面的专业知识
Singapore government logo

招聘经理认为,通过小组面试中提出的技术问题,他们能够判断哪些候选人得分更高,并与得分较差的候选人区分开来。他们是 非常满意 通过 Adaface 筛选入围的候选人的质量。


85%
减少筛查时间

嵌入式C在线测试 常见问题解答

我可以在同一个测试中评估 C 编码技能和嵌入式 C 技能吗?

是的。您可以查看我们的标准 C 在线测试 以了解将使用什么样的问题来评估 C。 最终测试将有评估 C 的 MCQ 问题、嵌入式 C 和评估 C 编码技能的编码问题。

我可以在同一个测试中评估 C++ 和嵌入式 C 吗?

是的。您可以查看我们的标准 C++ 在线测试 以了解将使用哪些类型的问题来评估 C++。最终测试将包括评估 C++ 的 MCQ 问题、评估 C/C++ 编码技能的嵌入式 C 和编码问题。

我可以将多个技能结合在一起,为一个自定义评估吗?

是的,一点没错。自定义评估是根据您的职位描述进行的,并将包括有关您指定的所有必备技能的问题。

您是否有任何反交换或策略功能?

我们具有以下反交易功能:

  • 不可解决的问题
  • IP策略
  • Web Protoring
  • 网络摄像头Proctoring
  • 窃检测
  • 安全浏览器

阅读有关[Proctoring功能](https://www.adaface.com/proctoring)的更多信息。

如何解释考试成绩?

要记住的主要问题是评估是消除工具,而不是选择工具。优化了技能评估,以帮助您消除在技术上没有资格担任该角色的候选人,它没有进行优化以帮助您找到该角色的最佳候选人。因此,使用评估的理想方法是确定阈值分数(通常为55%,我们为您提供基准测试),并邀请所有在下一轮面试中得分高于门槛的候选人。

我可以使用该测试的经验水平?

每个ADAFACE评估都是为您的职位描述/理想候选角色定制的(我们的主题专家将从我们的10000多个问题的图书馆中选择正确的问题)。可以为任何经验级别定制此评估。

每个候选人都会得到同样的问题吗?

是的,这使您比较候选人变得容易得多。 MCQ问题的选项和问题顺序是随机的。我们有[抗欺骗/策略](https://www.adaface.com/proctoring)功能。在我们的企业计划中,我们还可以选择使用类似难度级别的问题创建多个版本的相同评估。

我是候选人。我可以尝试练习测试吗?

不,不幸的是,我们目前不支持实践测试。但是,您可以使用我们的[示例问题](https://www.adaface.com/questions)进行练习。

使用此测试的成本是多少?

您可以查看我们的[定价计划](https://www.adaface.com/pricing/)。

我可以免费试用吗?

我刚刚搬到了一个付费计划。我如何要求自定义评估?

customers across world
Join 1200+ companies in 75+ countries.
立即尝试最候选的友好技能评估工具。
g2 badges
Ready to use the Adaface 嵌入式C检验?
Ready to use the Adaface 嵌入式C检验?
logo
40 min tests.
No trick questions.
Accurate shortlisting.
术语 隐私 信任指南

🌎选择您的语言

English Norsk Dansk Deutsche Nederlands Svenska Français Español Chinese (简体中文) Italiano Japanese (日本語) Polskie Português Russian (русский)
ada
Ada
● Online
Previous
Score: NA
Next
✖️