巧用位运算求解二进制中1的个数
位运算是将数字化为二进制后,对每一位的0或1进行的运算。一般的运算有与&、或|、异或^和移位等。如何利用位运算来求解二进制中1的个数呢?首先大多数人想到的是先判断最右边的一位是不是1,接着将其右移一位,知道数为0停止。将一个数与上1则可以解决这个问题。代码如下:int NumofOne1(int num){ int count=0; while(num) { if(num&1) {
TA关注的专栏 0
TA关注的收藏夹 0
TA关注的社区 0
TA参与的活动 0

「谁说嵌入式只是调包和焊板子?」—— 2026嵌入式全栈技术征锋令
谁说嵌入式只会“Ctrl+C 调包”和“拿电烙铁焊板子”?2026嵌入式全栈技术征锋令正式启幕! 本次活动专为硬核硬件/软件开发者打造,无论你是刚玩转裸机外设的萌新,还是精通RTOS调度、死磕底层驱动的行业老手,亦或是执掌系统架构的大神,这里都是你证明实力的舞台! 拒绝表面功夫,每一行代码,都有撬动硬件的力量!晒出你的硬核工程实战,为嵌入式开发者的全栈硬实力正名!


最近
文章
专栏
代码仓
资源
收藏
关注/订阅/互动
社区
帖子
问答
课程
视频
