binary algebra cpp

#include <iostream>
#include <bitset>

int main() {
    // Step 1: Declare variables
    unsigned int num1 = 5;   // Binary: 0000 0000 0000 0000 0000 0000 0000 0101
    unsigned int num2 = 10;  // Binary: 0000 0000 0000 0000 0000 0000 0000 1010
    unsigned int result;

    // Step 2: Perform bitwise AND operation
    result = num1 & num2;    // Binary: 0000 0000 0000 0000 0000 0000 0000 0000

    // Step 3: Perform bitwise OR operation
    result = num1 | num2;    // Binary: 0000 0000 0000 0000 0000 0000 0000 1111

    // Step 4: Perform bitwise XOR operation
    result = num1 ^ num2;    // Binary: 0000 0000 0000 0000 0000 0000 0000 1111

    // Step 5: Perform bitwise NOT operation
    result = ~num1;          // Binary: 1111 1111 1111 1111 1111 1111 1111 1010

    // Step 6: Left shift operation
    result = num1 << 1;      // Binary: 0000 0000 0000 0000 0000 0000 0000 1010

    // Step 7: Right shift operation
    result = num1 >> 1;      // Binary: 0000 0000 0000 0000 0000 0000 0000 0010

    // Step 8: Use of bitwise AND to check if a specific bit is set
    unsigned int bitmask = 0b00000010;  // Bitmask to check the 2nd bit
    result = num1 & bitmask;            // If result is non-zero, the bit is set

    return 0;
}