Skip to main content

Featured

C Program to Solve Two Sum Using Brute Force (With Algorithm & Output)

 Introduction The Two Sum problem is a popular coding interview question where we must find two indices of an array whose values add up to a given target. This program demonstrates a simple brute-force solution in C using nested loops and dynamic memory allocation. Problem Statement Given an integer array and a target value, return the indices of the two numbers such that they add up to the target. Each input has exactly one solution, and the same element cannot be used twice. The result should return the indices, not the values. If no solution exists, return NULL.  Algorithm / Logic Explanation Start the program. Traverse the array using a loop from index 0 to numsSize - 1 . Inside this loop, use another loop starting from i + 1 to numsSize - 1 . For every pair (i, j) , check if nums[i] + nums[j] == target . If condition becomes true: Allocate memory for 2 integers using malloc() . Store indices i and j . Set returnSize = 2 . Return the result poi...

Swap Nibbles of 8-bit Number in C

Swap Nibbles of 8-bit Number in C

✅ Swap Nibbles of 8-bit Number in C

#include <stdio.h>  // Header file for input/output functions

// Macro to swap the nibbles (4-bit groups) of an 8-bit number
// (x & 0x0F) extracts the lower nibble (last 4 bits)
// (x & 0xF0) extracts the upper nibble (first 4 bits)
// << 4 shifts lower nibble to upper position
// >> 4 shifts upper nibble to lower position
// The OR '|' combines both into the swapped result
#define SWAP_NIBBLES(x)  (((x & 0x0F) << 4) | ((x & 0xF0) >> 4))

int main() {
    unsigned char num;  // Declare an 8-bit unsigned variable

    printf("Enter an 8-bit number (0-255): ");  // Prompt user for input
    scanf("%hhu", &num);  // Read input as unsigned char using %hhu format specifier

    // Call the macro to swap the nibbles and store result in 'swapped'
    unsigned char swapped = SWAP_NIBBLES(num);

    // Print the result after swapping nibbles
    printf("After swapping nibbles: %u\n", swapped);

    return 0;  // Return 0 to indicate successful execution
}
  

๐Ÿ“˜ Explanation:

This program demonstrates how to swap the two 4-bit nibbles of an 8-bit number using a macro. A macro named SWAP_NIBBLES is defined to isolate the lower and upper nibbles using bitwise AND with 0x0F and 0xF0 respectively. The lower nibble is shifted left by 4 bits and the upper nibble is shifted right by 4 bits, then both are combined using the bitwise OR | operator.

The user inputs an 8-bit number (from 0 to 255), and the program displays the result after nibble swapping. This technique is useful in embedded systems, low-level data processing, and binary manipulations.

๐Ÿงพ Sample Output:

Enter an 8-bit number (0-255): 100
After swapping nibbles: 70
  

๐Ÿ”‘ Keywords:

Swap Nibbles in C, Bitwise Operations, C Macros, 8-bit Manipulation, Embedded C, Nibble Swapping, Low-level C Programming

๐Ÿ“Œ Hashtags:

#CProgramming #BitwiseOperators #MacrosInC #SwapNibbles #EmbeddedC #LowLevelCoding

Comments

Popular Posts

๐ŸŒ™