//口诀:置位用|,复位用&,取反用^
unsigned int temp; //定义无符号整形变量temp
//置位 temp的bit3为1,其他位不变
temp |= (1 << 3);
//置位 temp的bit3~bit7为1,其他位不变
temp |= (0x1f << 3);
//置位 temp的bit0~bit3为1,bit8~bit11为1,其他位不变
temp |= ( (0xf << 0) | (0xf << 8) );
//复位 temp的bit10为0,其他位不变
temp &= ~(1 << 10);
//复位 temp的bit10~bit13为0,其他位不变
temp &= ~(0xf << 10);
//复位 temp的bit0~bit3为0,bit8~bit11为0,其他位不变
temp &= ~( (0xf << 0) | (0xf << 8) );
//取出 temp的bit3~bit8,其余位清零
unsigned int a;
a = temp & (0x3f << 3);
//取反 temp的bit9取反,其他位不变
temp ^= (1 << 9);
STM32中的位运算技巧
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 前言 如果你不了解位运算,那你应该要补习一下功课,这里就不对位移运算做补习,因为今天用到的是与、或、非在二进制运算...