Advertisement
Guest User

15th Problem of 3th HomeWork

a guest
Mar 16th, 2014
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.80 KB | None | 0 0
  1. using System;
  2.  
  3. class BitsExchange
  4. {
  5.     static void Main()
  6.     {
  7.         // Write a program that exchanges bits 3, 4 and 5 with bits 24, 25 and 26 of given
  8.         // 32-bit unsigned integer. Examples: 1140867093, 255406592, 4294901775, 5351, 2369124121
  9.  
  10.         uint number = 5351;
  11.         int p = 3;
  12.         int q = 24;
  13.         int bitP;
  14.         int bitQ;
  15.  
  16.         for (int count = 0; count < 3; count++)
  17.         {
  18.             bitP = (int)(number >> p) & 1;
  19.             bitQ = (int)(number >> q) & 1;
  20.  
  21.             number = number & (uint)(~(1 << q)) | (uint)(bitP << q);
  22.             number = number & (uint)(~(1 << p)) | (uint)(bitQ << p);
  23.  
  24.             p++;
  25.             q++;
  26.         }
  27.         Console.WriteLine("After:\t{0}\t{1}", number, Convert.ToString(number, 2).PadLeft(32, '0'));
  28.     }
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement