bit的置位,复位与测试
来源:互联网 发布:淘宝二层牛皮除牛反绒 编辑:程序博客网 时间:2024/05/24 04:52
在C++中,有bitset类,可以作为bit的使用,下面进行如何利用32位的int型整数来进行位操作
首先声明需要存放的位数:
#define N 10000000
每一个int存放32位
#define BITSPERWORD 32
#define SHIFT 5
#defien MASK 0x1f
存的内存空间
int a[1+N/BITSPERWORD]
void set(int){ a[i>>SHIFT] |= (1<<(i&MASK))}
void clr(int){ a[i>>SHIFT] &= ~(1<<(i&MASK))}
void test(int){ return a[i>>SHIFT] & (1<<(i&MASK))}
上面的三个函数相似,i<<SHIFT代表的意思是找到第i位所在的int数组的位置,例如i=2000,i<<SHIFT=62,就是把i所在的高位,放在了a[62]中的相应的位,i&MASK=16是求i的低32位,对应于所在位的余数,总的来说就是在a[62]的第16位
阅读全文
0 0
- bit的置位,复位与测试
- 测试一下bit位的用法
- 关于西门子PLC300的置位和复位指令
- 同步与异步置复位的区别
- 硬件复位、软件复位、上电复位的异同
- 常用的位操作:置位、清零与测试
- 常用的位操作:置位、清零与测试
- stm32f1的存储器与复位
- 复位与复位电路
- Bit(位)与Byte(字节)的区别
- 阻容复位与按键复位的区别是什么?
- 西门子S7-300PLC的置位/复位指令及示例
- stm32 复位标志位
- STM32,软复位,上电复位,看门狗复位对芯片IO状态的影响?
- 同步复位与异步复位
- STM32上电复位不正常 手动复位正常的原因
- STM32F10x的复位与时钟控制
- FPGA开发中全局复位置位(GSR)
- 7.19 linux 基本操作
- wordpress 登录图片,样式
- 二叉查找树的插入和删除详解
- 士兵
- Cloudera的目录配置
- bit的置位,复位与测试
- 我所不知道的TCP Socket编程(二)-建立连接
- 【mysql 数据迁移】mysql中同一服务器,要从一个数据库里复制一个表到另一个数据库
- 解决react onTouchEnd事件在移动端,随手指滑动触发问题
- exec函数
- Thewolf语音验证码接收平台介绍及使用
- hitch编译的问题
- Python for Mysql
- webpack入门级教程