专栏中心

EEPW首页 > 专栏 > 常用的位操作:置位、清零与测试

常用的位操作:置位、清零与测试

发布人:电子禅石 时间:2019-07-05 来源:工程师 发布文章

以下程序可用于把某个位置位、清零或测试某位为0或1:

#include <stdio.h>
#include <stdbool.h>
int setbit(int num, int bit);
int clearbit(int num, int bit);
bool testbit(int num, int bit);
int main(void){
	int num=0x8A26;
	int new_num;
	new_num=setbit(num, 3);
	printf("num=%d\tnew_num=%d.\n", num, new_num);
	new_num=clearbit(num, 2);
	printf("num=%d\tnew_num=%d.\n", num, new_num);
	printf("%d\n",testbit(num, 2));
	return 0;
}
int setbit(int num, int bit){
	return num|=(1<<bit);
}
int clearbit(int num, int bit){
	return num&=~(1<<bit);
}
bool testbit(int num, int bit){
	return num&=(1<<bit);
}


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

DC到3.2GHz采样率!PXI平台+开放FPGA赋能,我们打造了一款“软件定义”的锁相放大器

测试测量 2026-03-17

拆解:华为 Watch GT 5 Pro

FPGA设计的良好设计方法及误区 上

视频 2009-11-02

拆解:三星 Galaxy Tab S10+

英伟达发布NemoClaw 与 Agent Toolkit工具集,全面升级AI智能体能力

低容量eMMC供应大断裂 2Q价格传将「两倍跳」

网络与存储 2026-03-17

功放软件

fanghlin 2005-08-26

RF IC设计理论及指南

FPGA设计的良好设计方法及误区 中

视频 2009-11-02

Symbian C++开发入门之概述 下

视频 2009-11-02

英伟达 Groq 3 LPU推理加速器与Groq LPX机柜入驻Rubin平台

大动态宽带数字中频AGC系统的设计

DSP 入门教程

资源下载 2007-12-14

三星2纳米制程量产延期,特斯拉AI6芯片交付推迟约6个月

EDA/PCB 2026-03-17

人工智能设计重塑数据管理

ARM常用开发工具使用分析 上

视频 2009-11-02

Q1 DRAM再涨180%,NAND涨150%

网络与存储 2026-03-17

摩尔线程与中国移动研究院等,联合发布128卡高密超节点参考设计,定义超大规模智算底座新标准

AGC电路数字仿真

FPGA设计的良好设计方法及误区 下

视频 2009-11-02
更多 培训课堂
更多 焦点
更多 视频

技术专区