Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class BitsExchange
- {
- static void Main()
- {
- // Write a program that exchanges bits 3, 4 and 5 with bits 24, 25 and 26 of given
- // 32-bit unsigned integer. Examples: 1140867093, 255406592, 4294901775, 5351, 2369124121
- uint number = 5351;
- int p = 3;
- int q = 24;
- int bitP;
- int bitQ;
- for (int count = 0; count < 3; count++)
- {
- bitP = (int)(number >> p) & 1;
- bitQ = (int)(number >> q) & 1;
- number = number & (uint)(~(1 << q)) | (uint)(bitP << q);
- number = number & (uint)(~(1 << p)) | (uint)(bitQ << p);
- p++;
- q++;
- }
- Console.WriteLine("After:\t{0}\t{1}", number, Convert.ToString(number, 2).PadLeft(32, '0'));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement