All submissions

Extract the Nibble from an 8-bit Register

Code

#include <stdio.h>

int main() {
    unsigned int reg, nibble_pos, nibble;

        scanf("%u %u", &reg, &nibble_pos);

            if (reg > 255 || (nibble_pos != 0 && nibble_pos != 1)) {
                    printf("Invalid input\n");
                            return 1;
                                }

                                    if (nibble_pos == 0)
                                            nibble = reg & 0x0F;         // Lower nibble
                                                else
                                                        nibble = (reg >> 4) & 0x0F;  // Upper nibble

                                                            printf("%u\n", nibble);
                                                                return 0;
                                                                }

Solving Approach

 

 

 

Loading...

Input

170 0

Expected Output

10