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

武汉网站建设与服务公司外贸营销型网站建设公司

武汉网站建设与服务公司,外贸营销型网站建设公司,国内产品设计公司前十名,做服务器的网站的模板我们在上学计算机的第一节课,就应该见过这些常见的运算符。然而,你可能有印象,但记不住众多操作符当中的位运算符,以及它们的作用和使用场景,我们的大脑会选择性地遗忘它认为没用的信息,存储下那些“有实际…

我们在上学计算机的第一节课,就应该见过这些常见的运算符。然而,你可能有印象,但记不住众多操作符当中的位运算符,以及它们的作用和使用场景,我们的大脑会选择性地遗忘它认为没用的信息,存储下那些“有实际应用场景”的有效知识。平时写代码的时候,只会和十进制打交道,这是因为在计算机的底层会帮我们把10进制运算的问题转化为二进制运算,计算机已经帮我们封装了位运算的逻辑。那么,我们为什么还要了解位运算呢?

在实际开发中,位图(Bitmap)是一种常用的数据结构和技术。通过高效的存储和操作方式,提供了快速且节省内存的解决方案。
例如,检测一批开发板是否合格,其中一个对象中存在某个属性:object:{ standard:true; } 这个对象中还有其他属性,但检测是否合格只需要判断 standard == 1;那么,假设用bit位来表示合格与不合格,1表示是,0表示非。
那么1个bit位 :10010000 第一个和第四个合格,其他的不合格,由此,我们不需要使用object的方式进行存储,我们可能将原本占用了32个字节大小的存储空间的对象压缩成了一个比特,8个比特可以检测8个开发板的合格与否。
一个字节是8个比特,所以存储空间被优化了256倍,假如有1000w块开发板需要检测并返回结果,用对象的方式存储需要占用的内存空间是300GB的内存空间大小,如果我们换成用bit的方式实现检测,只需要占用2GB的存储空间大小便能够完成检测。

使用这种一串比特位存储0和1两种状态的数据结构称为位图(BITMAP),
由此,我们知道了位图具有很多好处:

	节省内存:位图能节省巨量的存储空间。内存效率高:使用位来表示信息,节省存储空间。例如,一个字节可以表示8个布尔值。对比数组 + 对象的方式不仅性能高出一个数量级而且极大节约了内存空间。快速访问:通过位运算可以快速地检查、设置或清除特定位的值。例如,查询第一个位置是否为 真:x & (1<<n);即使是某些批量操作和复杂操作,也只需要一次就能完成。便捷方便。资源管理、高效存储:用于管理有限资源的使用情况,如内存页的分配。状态标记:在控制多个布尔状态时(如任务调度),使用位图可以高效地管理和检查状态。图形显示:在简单图形系统中,用位图表示图像的像素状态。权限控制:利用位图表示用户或进程的权限集合。

移位运算符:专门写软件的人而言不重要,但对于嵌入式开发来说,这很重要 —> 因为在寄存器开发中会经常遇到。

<<   >> 
格式:表达式 << n 
例子:移位运算--->针对位:bit位 --->二进制有关 int a=10;a<<3;
右移:要注意 符号位 算术右移: 空出来的位 补符号位 >考虑符号位逻辑右移: 空出来的位 补0  --->单纯的数值运算位运算: -->所有的运算都针对 二进制bit位 1>位与:& 解释: 表达式1 & 表达式2 ==>双方转化为二进制,按位对比,相同位上都为1,结果为1 例如: short a=520;short b=250;a&b--->a:0000 0010 0000 1000b:0000 0000 1111 1010   & ------------------------------>0000 0000 0000 1000 ==> 82>位或:|解释: 表达式1 | 表达式2 ==>相同位上数据如果有1,结果为1例如:short a=520;short b=250;a|b--->a:0000 0010 0000 1000b:0000 0000 1111 1010   |-------------------------------------  0000 0010 1111 1010  ==>7623>异或:^ 解释:表达式1 ^ 表达式2 ==>相同位上数据不相同,结果为1 例如:short a=520;short b=250;a^b--->a:0000 0010 0000 1000b:0000 0000 1111 1010     ^ -------------------------------0000 0010 1111 0010 ==> 754 4>取反:~ 解释: ~表达式1 ===> 0变1   1变0 例如: short a=520;a:0000 0010 0000 1000~a;1111 1101 1111 0111 --->有问题:补码1111 1101 1111 0110 --->反码 1000 0010 0000 1001 --->原码 = -521组合模仿:C语言原装是没有同或 :可以通过 取反 + 异或 得到同或  ~(a^b):  --->达到同或

在嵌入式系统中,因为寄存器内存是有限的,对于内存空间的使用更为苛刻,位运算具有性能优势:
1、速度:位运算是基本的CPU操作,直接作用于数据的二进制表示,计算速度极快,比许多其他操作(如乘法、除法)更高效。
2、内存效率:通过位操作,可以在一个字节中存储多个布尔值,节省内存空间。
3、直接硬件控制:位运算能够直接操作硬件寄存器,方便设置或读取特定位,减少指令开销。
4、代码简洁、精确控制:使用位掩码进行状态管理和权限控制,使代码更简洁明了。提供对数据的精确控制,适合底层开发。
5、功耗降低:由于减少了处理器的运算时间和内存访问,能有效降低功耗,这是嵌入式系统中一个重要的考量。

位运算在资源有限、需要高效运行的嵌入式系统中有显著的性能优势,并节省了大量的内存空间。
位运算在控制硬件设备、检查传感器状态、高效传输和存储等多个场景中都十分必要,所以要熟悉位运算的方式。正如在编程之前,首先对每个过程中的逻辑环节都必须十分清晰,不可模糊编程。也可在这个过程中锤炼自己的编程思维,对业务流程也会更加清晰。

以上。

我是一个十分热爱技术的程序员,希望这篇文章能够对您有帮助,也希望认识更多热爱程序开发的小伙伴。
感谢!

http://www.15wanjia.com/news/18942.html

相关文章:

  • 招聘网站开发源码酒店推广渠道有哪些
  • wordpress添加点赞常德网站seo
  • 个人网站后期怎么做企业网站建设的数字化和互联网化
  • 个人网站建设网站河北优化seo
  • 做购物类网站有哪些百度地图导航2021最新版
  • 宣传推广费用预算怎么优化自己网站
  • 天津网站优化哪家最专业seo公司是做什么的
  • 老网站权重低的原因营销新闻
  • 域名注册好了如何做网站英文seo实战派
  • 英文网站设计制作焦作网络推广哪家好
  • 网站需要哪些备案十大教育培训机构排名
  • 淘宝客购物网站的怎么做重庆seo网页优化
  • thinkphp旅游网站源码自己的网站
  • ai生成图片在线制作seo的优化技巧和方法
  • 如何创建自己的博客网站电商运营方案计划书
  • 北仑宁波有没有做网站市场营销毕业后找什么工作
  • 网站建设规划书模板网站外链出售
  • 遵义网站建设公司有哪些上海优化公司排行榜
  • 衡州网站建设seo百度经验手机版官网
  • 有什么专业做心理的网站今日头条十大热点
  • 嘉鱼网站建设哪家专业如何开发一个软件平台
  • 大通网站建设百度seo排名优化教程
  • 贵阳学网站建设无代码免费web开发平台
  • 中国建设银行网站类型分析电脑培训网上课程
  • 成都网站建设多少费用网站优化方案怎么写
  • 营销网站的基本要素周口网站seo
  • 中国园林网什么是网站推广优化
  • 跨境电商到什么网站做html家乡网站设计
  • .net空网站做九九乘法表网络营销到底是个啥
  • 龙岗网站制作公司一般多少钱互联网销售平台