Use XOR to encode and decode a message

image_pdfimage_print

   

/*
C#: The Complete Reference 
by Herbert Schildt 

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/
// Use XOR to encode and decode a message. 
 
using System; 
 
public class Encode {  
  public static void Main() { 
    char ch1 = 'H'; 
    char ch2 = 'i'; 
    char ch3 = '!'; 
 
    int key = 88; 
 
    Console.WriteLine("Original message: " + 
                      ch1 + ch2 + ch3); 
 
    // encode the message 
    ch1 = (char) (ch1 ^ key); 
    ch2 = (char) (ch2 ^ key); 
    ch3 = (char) (ch3 ^ key); 
 
    Console.WriteLine("Encoded message: " +  
                      ch1 + ch2 + ch3); 
 
    // decode the message 
    ch1 = (char) (ch1 ^ key); 
    ch2 = (char) (ch2 ^ key); 
    ch3 = (char) (ch3 ^ key); 
    
    Console.WriteLine("Decoded message: " + 
                      ch1 + ch2 + ch3); 
  } 
}

           
          


Use bitwise OR to make a number odd

image_pdfimage_print

/*
C#: The Complete Reference
by Herbert Schildt

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/
// Use bitwise OR to make a number odd.
using System;

public class MakeOdd {
public static void Main() {
ushort num;
ushort i;

for(i = 1; i <= 10; i++) { num = i; Console.WriteLine("num: " + num); num = (ushort) (num | 1); // num | 0000 0001 Console.WriteLine("num after turning on bit zero: " + num + " "); } } } [/csharp]

Display the bits within a byte

image_pdfimage_print

   

/*
C#: The Complete Reference 
by Herbert Schildt 

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/
// Display the bits within a byte.  
using System; 
 
public class ShowBits { 
  public static void Main() { 
    int t; 
    byte val;  
  
    val = 123; 
    for(t=128; t > 0; t = t/2) { 
      if((val &amp; t) != 0) Console.Write("1 ");  
      if((val &amp; t) == 0) Console.Write("0 ");  
    } 
  } 
}


           
          


Use bitwise AND to determine if a number is odd

image_pdfimage_print

   

/*
C#: The Complete Reference 
by Herbert Schildt 

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/
//  Use bitwise AND to determine if a number is odd. 
using System; 
 
public class IsOdd {  
  public static void Main() { 
    ushort num;  
 
    num = 10; 
 
    if((num &amp; 1) == 1) 
      Console.WriteLine("This won&#039;t display."); 
 
    num = 11; 
 
    if((num &amp; 1) == 1) 
      Console.WriteLine(num + " is odd."); 
 
  } 
}

           
          


Use bitwise AND to make a number even

image_pdfimage_print

/*
C#: The Complete Reference
by Herbert Schildt

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/

// Use bitwise AND to make a number even.
using System;

public class MakeEven {
public static void Main() {
ushort num;
ushort i;

for(i = 1; i <= 10; i++) { num = i; Console.WriteLine("num: " + num); num = (ushort) (num & 0xFFFE); // num & 1111 1110 Console.WriteLine("num after turning off bit zero: " + num + " "); } } } [/csharp]

Shift Operators 2

image_pdfimage_print
   

/*
 * C# Programmers Pocket Consultant
 * Author: Gregory S. MacBeth
 * Email: gmacbeth@comporium.net
 * Create Date: June 27, 2003
 * Last Modified Date:
 */
using System;

namespace Client.Chapter_2___Operators_and_Excpressions
{
  public class ShiftOperators
  {
    static void Main(string[] args)
    {
      uint a = 0;
      uint b = 0;

      a = 8 << 3;
      b = 32 >> 4;
    }
  }
}

           
          


Bit Shift operator

image_pdfimage_print

using System;

class CompoundBitOpsApp
{
static void Main(string[] args)
{
for (byte j = 0; j < 8; j++) { byte k = 1; Console.WriteLine( "1 <<= {0,3} ({1}) = {2,8} ({3,3})", Convert.ToString(j, 2), j, Convert.ToString((k <<= j), 2), k); } } } [/csharp]