#include <stdio.h> unsigned char extractNibble(unsigned char reg, int pos) { return pos ? reg>>4 : reg&0xf ; } int main() { unsigned char reg; int pos; scanf("%hhu %d", ®, &pos); printf("%d", extractNibble(reg, pos)); return 0; }