当前位置: 首页 > news >正文

郑州网站seo外包公司凡高网站建设

郑州网站seo外包公司,凡高网站建设,网站是否上线,顶尖的设计网站文章目录 前言一、进程和线程的区别二、共享内存的原理三、中断有传参和返回值吗四、串口数据帧格式五、进程通信有几种#xff0c;哪几种需要借助内核1.方式2.需要借助内核的 六、flash有哪几种类型七、指针的本质是什么八、指针和数组的区别九、使用宏定义交换变量不能使用中… 文章目录 前言一、进程和线程的区别二、共享内存的原理三、中断有传参和返回值吗四、串口数据帧格式五、进程通信有几种哪几种需要借助内核1.方式2.需要借助内核的 六、flash有哪几种类型七、指针的本质是什么八、指针和数组的区别九、使用宏定义交换变量不能使用中间变量十、do { ... } while(0) 结构的作用总结 前言 本篇文章继续讲解嵌入式面试笔试刷题希望大家能够继续坚持哦。 一、进程和线程的区别 1.定义进程是程序的执行实例是资源分配和调度的单位线程是进程中的执行单元是CPU调度和执行的基本单位。 2.资源占用每个进程都有独立的内存空间、文件描述符和其他系统资源进程之间的通信需要使用进程间通信IPC机制。而线程是在进程内部共享进程的资源包括内存空间和文件描述符等线程之间可以直接共享数据因此线程间通信更加方便。 3.调度和切换在操作系统中进程是一个独立的单位由调度器进行调度和切换。切换进程时需要保存和恢复进程的上下文开销较大。而线程是进程内部的执行单元线程的切换开销比进程的切换小很多。因此多线程的程序在切换和调度上更加高效。 4.执行并发性由于进程之间具有独立的内存空间和资源不同进程间的执行是相互独立的可以同时执行不同的任务。而线程共享进程的资源线程之间执行可以并发或并行可以更充分利用系统的多核处理器提高执行效率。 5.容错性由于进程的独立性一个进程的崩溃不会影响其他进程的执行。而线程是在进程内部执行一个线程的错误可能会导致整个进程崩溃。 二、共享内存的原理 通过将一块内存区域映射到多个进程的地址空间使得这些进程可以直接访问和共享相同的内存内容从而实现数据的交互和共享。 三、中断有传参和返回值吗 中断通常不直接支持传参和返回值。这是因为中断是一种异步事件处理机制它的执行是由硬件或者特定的事件触发并且不像函数调用那样由程序主动发起。 四、串口数据帧格式 1.起始位 2.数据位 3.奇偶校验位 4.停止位 五、进程通信有几种哪几种需要借助内核 1.方式 1.管道 2.命名管道 3.共享内存 4.信号量 5.消息队列 6.套接字 7.信号 2.需要借助内核的 需要借助内核的通信方式包括管道、共享内存、信号量、消息队列和套接字。 六、flash有哪几种类型 1.NOR FlashNOR Flash 主要用于存储程序代码和执行读操作。它提供了快速的随机访问速度和较长的擦除寿命。NOR Flash 的特点是可以按字节进行读写操作且具有较低的擦除和写入时间。因此它适用于需要频繁执行读操作的应用如嵌入式系统中的引导程序和固件存储。 2.NAND FlashNAND Flash 主要用于大容量存储和数据存储例如移动设备和固态硬盘SSD。相对于 NOR FlashNAND Flash 具有较高的存储密度和较低的成本但访问速度较慢通常以页为单位进行读写操作。NAND Flash 的特点是具有较高的数据传输速率和较高的擦写寿命适用于需要大容量存储和频繁写操作的应用。 3.eMMCeMMCEmbedded Multi-Media Card是一种内嵌式多媒体卡集成了 NAND Flash 存储芯片和控制器。它通常用于嵌入式设备和移动设备中提供了可靠的存储解决方案。eMMC 的特点是小巧便携、低功耗且支持随机读写操作。 4.UFSUFSUniversal Flash Storage是一种新型的高速闪存存储标准可提供更快的数据传输速率和更高的性能。它被广泛用于高端移动设备和存储解决方案中。UFS 具有较低的延迟、更高的带宽和更好的可靠性支持高速读写操作。 七、指针的本质是什么 指针的本质是一个变量但它存储的是一个内存地址而不是实际的数据。 指针的存储方式取决于计算机架构和编程语言。在大多数计算机体系结构中内存地址通常使用二进制表示并根据特定的内存寻址方案进行存储。指针变量本身也是存储在内存中的它占用一定的内存空间用于存储目标地址。 八、指针和数组的区别 1.数据结构数组是一种数据结构用于存储一系列相同类型的数据元素。它是连续的内存块每个元素在内存中的位置相邻。指针是一个变量存储了一个内存地址它可以指向任何数据类型的数据包括数组。 2.内存分配数组在定义时需要指定长度或者使用动态内存分配如C中的new运算符编译器在编译时为数组分配指定长度的内存空间。指针可以通过赋值操作指向任何有效的内存地址包括数组的首地址或者其他内存区域。 3.大小和访问数组的大小是固定的一旦定义后不能改变。通过索引可以直接访问数组中的元素索引从0开始。指针本身的大小取决于系统的位数通常为4字节或8字节通过解引用操作符*可以访问指针指向的内存位置可以通过指针的算术运算来访问数组中的不同元素。 4.数组名 vs. 指针变量在C语言中数组名实际上是指向数组首元素的指针常量。它可以被隐式转换为指针类型所以可以使用指针的方式对数组进行操作。然而数组名本身不能被赋值或修改。指针变量可以重新赋值来指向不同的内存位置。 5.参数传递作为函数参数传递时数组通常以指针的形式传递。在函数内部无法得知数组的长度因此需要额外的参数来传递数组的长度信息。指针作为函数参数可以提供灵活的传递和访问内存的能力。 九、使用宏定义交换变量不能使用中间变量 #include stdio.h#define SWAP(a, b) do { \(a) (a) ^ (b); \(b) (a) ^ (b); \(a) (a) ^ (b); \} while(0)int main() {int x 10;int y 20;printf(Before swap: x %d, y %d\n, x, y);SWAP(x, y);printf(After swap: x %d, y %d\n, x, y);return 0; }在上面的示例中我们定义了一个名为 SWAP 的宏函数它使用了位异或运算符^来交换数据。通过连续进行三次异或操作可以实现两个变量的值互换而无需使用临时变量。 需要注意的是宏函数使用 do { … } while(0) 结构来确保宏定义中的多个语句都能够正常运行并且可以在条件语句中使用宏函数。 这样在调用 SWAP(x, y) 时宏展开后的代码会执行三次位异或运算实现 x 和 y 的交换。最终x 的值变成了原来 y 的值y 的值变成了原来 x 的值。 十、do { … } while(0) 结构的作用 在宏定义的使用中使用 do { … } while(0) 结构的主要目的是为了确保宏定义在展开时可以正常工作。 宏定义本质上是文本替换编译器在代码中找到宏的调用并将其展开为宏定义中的代码。如果宏定义只是简单地展开为一行代码那么在某些情况下可能会导致意想不到的行为。 使用 do { … } while(0) 结构可以解决以下两个问题 1.语法上的问题如果宏定义只是一个单独的语句并且在某些情况下需要在条件语句中使用宏例如if (condition) MACRO(x); else …。这样的话如果宏定义展开后只是一个语句那么编译器在展开后的输出代码中会导致语法错误。通过使用 do { … } while(0) 结构可以确保宏定义受到分号;的约束从而避免语法错误。 2.嵌套问题如果宏定义展开后包含多个语句并且在代码中使用了条件语句、循环等结构例如 #define MACRO(x) do { \statement1; \if (condition) { \statement2; \} \} while(0)如果宏定义展开后的代码中缺少大括号那么在使用该宏时嵌套结构可能会导致逻辑错误。通过使用 do { … } while(0) 结构宏定义中的多个语句都被包含在一个块作用域中确保了这些语句的正常执行。 总结来说使用 do { … } while(0) 结构是为了保证宏定义在展开时在语法和逻辑上都是正确的。这种结构在宏定义中是一种常用的技巧以确保宏在使用时能够像正常的代码一样正常工作。 总结 本篇文章就讲解到这里下篇文章继续讲解。
http://www.hkea.cn/news/14510759/

相关文章:

  • 织梦网站添加搜索功能wordpress重新安装插件
  • 蘑菇头表情包制作网站wordpress 模板 下载
  • 北京住房与建设部网站品牌电商网站
  • 徐州招聘网站哪个好网站建设先进个人自荐
  • 网站商城app建设方案关于制作网站收费标准
  • 网上书城网站开发的目的与意苏州网址制作公司
  • 房地产网站策划书网站开发工程师制作kpi
  • 网站分析怎么做的wordpress 授权破解
  • 济南汽车网站设计深圳十大建筑工程公司排行榜
  • 网站开发技术介绍自创品牌策划方案
  • wordpress站点浏览人流医院网站建设
  • html网站欣赏从0搭建一个网站
  • 广州模板建站平台wordpress模版侵权
  • 刷网站建设济南公司建设网站
  • 怎么做网站广告赚钱做网站设计要注意什么问题
  • 人社局网站群建设工作方案公司设计网站有什么好处
  • 开个网站卖机器怎么做系统开发需求
  • 健身房网站建设案例网站建设英文方案
  • 广州皮具网站建设市场营销策略国内外研究现状
  • 网站域名如何更换展示型装饰网站模板
  • 温州做网站建设哪家好做公众号网站
  • 常州网站建设运营WordPress访问mysql慢
  • 网站布局策划网站怎么企业备案信息查询
  • 群晖wordpress站点地址拼多多一键铺货软件
  • 代码网站开发网站开发员招聘
  • wap卖料建站系统中山网站建设公司哪个好
  • 长春网站建设吉网传媒实力牜广告营销是做什么的
  • 文登城乡建设局网站10月上海娱乐场所又要关门了
  • wordpress 页面 列表seo排名优化哪里好
  • 营销者网站wordpress升级缓存