Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class BitsExchange
- {
- static void Main()
- {
- Console.WriteLine("Please enter the number");
- uint number = uint.Parse(Console.ReadLine());
- Console.WriteLine("Number in binary");
- Console.WriteLine(Convert.ToString(number, 2).PadLeft(32, '0'));
- int firstBitsGroupPosition = 3;//position 3,4,5
- int secondBitsGroupPosition = 24;//position 24,25,26
- uint firstBitsGroupPositionMask = 7u << firstBitsGroupPosition;
- uint secondBitsGroupPositionMask = 7u << secondBitsGroupPosition;
- uint getFirstGroupBits = firstBitsGroupPositionMask & number;
- uint getSecondGroupBits = secondBitsGroupPositionMask & number;
- uint newMask = (getFirstGroupBits >> firstBitsGroupPosition) ^ (getSecondGroupBits >> secondBitsGroupPosition);/* we use the ^ to create new mask and use to excange bits */
- uint newNumber = ((newMask << firstBitsGroupPosition) ^ number);
- newNumber = ((newMask << secondBitsGroupPosition) ^ newNumber);
- Console.WriteLine(Convert.ToString(newNumber, 2).PadLeft(32, '0'));
- Console.WriteLine(newNumber);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement