找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2245|回复: 7
收起左侧

为什么32位的单片机,不能直接定义一个位变量

[复制链接]
ID:972086 发表于 2023-5-9 09:32 | 显示全部楼层 |阅读模式
大佬们,为什么32位的单片机(比如),不能像51单片机一样直接定义一个位变量,这样不是更方便取反,而且还省内存,是内核设计上会有缺陷吗?还是会有别的什么问题?求告知
回复

使用道具 举报

ID:1034262 发表于 2023-5-9 10:35 | 显示全部楼层
可以用宏封装成51一样的位操作,用位域操作。
回复

使用道具 举报

ID:1045628 发表于 2023-5-9 10:55 | 显示全部楼层
可以用联合体
回复

使用道具 举报

ID:1063134 发表于 2023-5-9 10:57 | 显示全部楼层
应该可以,但太复杂
回复

使用道具 举报

ID:883242 发表于 2023-5-9 11:57 | 显示全部楼层
操作一个位需要32个位地址,你这是省了一个寂。
回复

使用道具 举报

ID:73992 发表于 2023-5-9 12:19 | 显示全部楼层
stm32位操作,是以操作地址的形式操作位。一个位对应一个字的地址。向这个地址写0或一,就相当于给这个位写0或一。这是芯片设计定的。
回复

使用道具 举报

ID:752974 发表于 2023-5-9 13:18 | 显示全部楼层
回复

使用道具 举报

ID:123289 发表于 2023-5-10 09:15 | 显示全部楼层
取决于CPU操作系统的指令系统中有没有【位操作】指令。
仔细阅读CPU手册就明白了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表