Advertisement
Fundamentalen

BitsExchange

Mar 17th, 2014
1,298
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.19 KB | None | 0 0
  1. using System;
  2.  
  3. class BitsExchange
  4. {
  5.     static void Main()
  6.     {
  7.         Console.Write("Enter your number: ");
  8.         long number = long.Parse(Console.ReadLine());
  9.  
  10.         Console.WriteLine(Convert.ToString(number, 2).PadLeft(32, '0'));
  11.  
  12.         int fakeBitOne = 3;
  13.         int fakeBitTwo = 24;
  14.  
  15.         for (int i = 0; i < 3; i++)
  16.         {
  17.             long maskOne = (number & (1 << fakeBitOne)) >> fakeBitOne;
  18.             long maskTwo = (number & (1 << fakeBitTwo)) >> fakeBitTwo;
  19.  
  20.             //mask one
  21.             if (maskOne == 0)
  22.             {
  23.                 number = number & (~(1 << fakeBitTwo));
  24.             }
  25.             else if (maskOne == 1)
  26.             {
  27.                 number = number | (1 << fakeBitTwo);
  28.             }
  29.  
  30.             //mask two
  31.             if (maskTwo == 0)
  32.             {
  33.                 number = number & (~(1 << fakeBitOne));
  34.             }
  35.             else if (maskTwo == 1)
  36.             {
  37.                 number = number | (1 << fakeBitOne);
  38.             }
  39.  
  40.             fakeBitOne++;
  41.             fakeBitTwo++;
  42.         }
  43.  
  44.         Console.WriteLine(Convert.ToString(number, 2).PadLeft(32, '0'));
  45.         Console.WriteLine(number);
  46.     }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement