首页 > 解决方案 > C - 如何获取 Char 中的 4 个最低有效位

问题描述

我是 C 语言的新手,我试图从无符号字符中获取 4 个最低有效位。到目前为止,我不知道如何获得它们。我会很感激任何帮助

标签: cbit

解决方案


这是简单的按位逻辑:

unsigned char c = 120;
unsigned char lsb4 = c & 0x0F;

其中0x0F表示二进制值00001111

如果您使用的是 GCC,那就更直接了:

unsigned char lsb4 = c & 0b00001111;

0从技术上讲,这里不需要前导s,但包含它们是为了帮助说明选择了哪些位。


推荐阅读