Это просто побитовая логика:
unsigned char c = 120;
unsigned char lsb4 = c & 0x0F;
Где 0x0F
представляет двоичное значение 00001111
.
Если вы используете GCC, это даже более буквально:
unsigned char lsb4 = c & 0b00001111;
Технически, ведущие 0
здесь не требуются, но они включены, чтобы помочь проиллюстрировать, какие биты выбираются.