嵌入式面试题1

这篇具有很好参考价值的文章主要介绍了嵌入式面试题1。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、用预处理指令交换两个参数的值

#define SWAP(a,b) { int c=a;a=b;b=c}

2、写出floatx与“零值”比较的if语句

if(x<=0.000001 && x>=-0.000001)

float型变量和“零值”比较的方法:
 
const float EPSINON = 0.000001;
 
if ((x >= - EPSINON) && (x <=EPSINON))
 
浮点型变量并不精确,其中EPSINON是允许的误差(即精度),所以不可将float变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“<=”形式。如果写成if (x == 0.0),则是错误的。
 EPSILON指的是浮点数可表示的最小值
因为1.0在计算机中可能存为0.999999或1.00001等,很难恰好是1.0

3、为什么说if(0==x)比if(x==0)好?

为了更好的发现因为疏忽将if(x==0)错写成if(x=0)导致的错误,因为将常量写在前,当你少写一个=时,if(0=x)程序就会报错,从而提醒你,而写成if(x=0)程序并不会报错而是当成赋值语句。

4、将地址0x8000中存放的整形变量,清除bit1。

设地址0x8000 存放的整形变量为a,清除bit1,则就是置bit1为0,则需要让 a &= 111 1111 1111 1101,而1111 1111 1111 1101 可通过(0x01<<1)再取反得到。
因此:a &=~(0x01<<1) 文章来源地址https://www.toymoban.com/news/detail-433412.html

到了这里,关于嵌入式面试题1的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【蓝桥杯嵌入式】第十四届蓝桥杯嵌入式[模拟赛1]程序设计试题及详细题解

    模拟赛1的题目中需要的准备的知识点不多,其中只用到了 串口 、 LCD 、 LED 、 按键 、 定时器的PWM输出 、以及 ADC 等几个模块,题目要求也简单详细并且数量不多,非常适合入门比赛,以及整合自己比赛的模块。 与模拟赛2相比,当然是模拟赛2的试题比较难啦,虽然需要的模

    2023年04月13日
    浏览(38)
  • 嵌入式工程师常见面试题(持续更新版本)

    前言: 鄙人于学堂求学十余载,终是要踏足江湖求一寸安身处!以前都忙着学习新东西以及做项目,现如今也需要面对找工作的压力。此篇博客是作者准备的嵌入式工程师常见的面试题目汇总, 其答案包含网络搜索和作者自己感悟总结的 ,可能存在问题, 如有大的纰漏希望

    2024年02月08日
    浏览(39)
  • 【IoT】嵌入式Linux开发:网络设备开发(测试题)

    目录 网络开发 选择题 1、路由器工作在哪一层(B)

    2024年02月06日
    浏览(48)
  • 嵌入式面试2

    ==== 9.写出float x 与“零值”比较的if语句。 if(x 0.000001 x -0.000001) 权重:高 备注:实际编程时要注意 ==== 12、已知一个数组table,用一个宏定义,求出数据的元素个数。 参考答案: #define NTBL (sizeof(table) / sizeof(table[0])) 权重:高 备注:实际工作经常使用 ==== 34、 对(-1.2345)取整是

    2024年02月13日
    浏览(30)
  • 嵌入式面试3

    1.线程与进程的区别和联系? 线程是否具有相同的堆栈? dll是否有独立的堆栈? 进程是死的,只是一些资源的集合,真正的程序执行都是线程来完成的,程序启动的时候操作系统就帮你创建了一个主线程。 每个线程有自己的堆栈。 DLL中有没有独立的堆栈,这个问题不好回答。因

    2024年02月14日
    浏览(32)
  • 嵌入式面试提问

      现总结下:首先是时钟源输入时钟信号到单片机,然后单片机对输入的时钟信号进行倍频和分频处理,再将处理后的时钟信号输出至系统,外设或外部接口。   先看这张图,最外面的线上的方格是时钟相关的外部接口,OSC接口用于连接外部石英晶振时钟电路,最下面的

    2024年01月24日
    浏览(31)
  • 嵌入式面试题1

    1、用预处理指令交换两个参数的值 2、写出floatx与“零值”比较的if语句 float型变量和“零值”比较的方法:   const float EPSINON = 0.000001;   if ((x = - EPSINON) (x =EPSINON))   浮点型变量并不精确,其中EPSINON是允许的误差(即精度),所以不可将float变量用“==”或“!=”与数字比较,

    2024年02月02日
    浏览(29)
  • 嵌入式面试-经典问题

    1、c语言内存模型 2、C语言中的变量定义在什么地方 3、C语言代码如何运行的、关于栈的相关 4、指针函数与函数指针的区分 5、Static的作用 6、const作用 7、进程与线程的区别 8、链表与数组的区别 9、#define宏定义与typedef的区别

    2024年02月09日
    浏览(32)
  • 嵌入式面试常考问题

    1、malloc与new的区别 1、new是操作符,malloc是函数 2、new使用时先分配内存,再调用构造函数,释放时调用析构函数 3、new只能分配实例所占类型的整数倍,malloc可以随意分配。 4、new失败返回异常,malloc返回NULL 2、C语言内存分配的方式 1、静态区分配:编译时分配好,主要储存

    2024年02月17日
    浏览(33)
  • 2019年安徽省机器人大赛单片机与嵌入式系统应用技能竞赛试题(2)

    目录 一、赛题展示 二、具体分析 1、任务 2、基本功能 3、发挥要求 总思路:根据第一个按键先判断方向(利用一个变量存储),该方向所有楼层经过后,反向运动。当最后一个楼层到达后,判断是否有新按键按下,判断时间大于三秒,返回默认楼层。         开机后,

    2024年02月04日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包