news 2026/6/10 20:22:54

简单理解:|= (1 << 8) 不破坏其他位,仅修改目标位的标准写法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
简单理解:|= (1 << 8) 不破坏其他位,仅修改目标位的标准写法
|= (1 << 8):位设置操作(关键)

这是嵌入式开发中 “不破坏其他位,仅修改目标位” 的标准写法,拆解为两步:

  • 第一步:1 << 8表示将二进制0b00000001左移 8 位,结果是0b100000000(十进制 256)。作用是:生成一个 “仅第 8 位为 1,其余位为 0” 的 “掩码(mask)”。
  • 第二步:|=(按位或赋值)按位或运算规则:0 | 0 = 00 | 1 = 11 | 0 = 11 | 1 = 1。结合掩码使用时,目标位(bit8)会被强制设为 1,其他位保持原有值不变(因为掩码其他位是 0,按位或后不改变原数据)。

三、等价写法(便于理解)

这句话等价于:

XT_CKCU->GCFGR = XT_CKCU->GCFGR | (1 << 8);

先读取GCFGR的当前值,与掩码做按位或,再写回寄存器 —— 核心是 “只改 bit8,不改其他位”。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 11:05:34

简单理解:用地址偏移找到寄存器 + 用位操作精准修改目标位—— 这是嵌入式寄存器配置的标准最佳实践,既安全又易维护

“地址偏移” 是 “访问寄存器的手段”&#xff0c;“| 位操作” 是 “修改寄存器值的策略” —— 嵌入式中不是 “不用直接赋值”&#xff0c;而是 “优先用 |/& 位操作”&#xff0c;且访问寄存器本质都依赖地址偏移&#xff0c;只是语法上被封装了。一、先明确&#xff…

作者头像 李华
网站建设 2026/6/10 1:10:41

Miniconda-Python3.9环境下使用Wandb记录实验

Miniconda-Python3.9 环境下使用 Wandb 实现高效实验追踪 在深度学习项目中&#xff0c;你是否曾遇到过这样的场景&#xff1a;训练完一个模型后&#xff0c;回头却记不清用了哪个学习率、哪次跑出了最佳准确率&#xff1f;又或者&#xff0c;团队成员之间因为环境版本不一致导…

作者头像 李华
网站建设 2026/6/10 11:20:25

HR如何升级打怪?4个方法拓宽发展路

行业洞察&#xff1a;能力不设限&#xff0c;HR才能不被淘汰“做HR多年&#xff0c;只会招人算薪&#xff0c;晋升之路一眼望到头&#xff1f;”“行业变革快得飞起&#xff0c;新工具、新政策根本跟不上&#xff1f;”“想拓宽发展边界&#xff0c;却不知道从哪儿发力&#xf…

作者头像 李华
网站建设 2026/6/10 11:44:17

1. 攻克化学镀锡添加剂稳定性挑战:无锡中镀科技产学研合作成

攻克化学镀锡添加剂稳定性挑战&#xff1a;无锡中镀科技产学研合作成果的应用与 STANNATECH 解决方案价值分析开篇&#xff1a;定调与破题在 PCB&#xff08;印刷电路板&#xff09;制造领域&#xff0c;化学镀锡工艺至关重要。然而&#xff0c;当前化学镀锡添加剂的稳定性面临…

作者头像 李华
网站建设 2026/6/9 20:39:14

深度解析:SRM系统如何赋能采购库存协同

库存管理是供应链运营的核心环节&#xff0c;直接影响企业的现金流、生产连续性与客户满意度。在当前复杂多变的市场环境下&#xff0c;库存既是保障生产的压舱石&#xff0c;也往往成为吞噬企业利润的出血点。传统采购管理正面临严重的断点之困。信息在企业与供应商之间无法实…

作者头像 李华