2022-02-18 13:13:25 +01:00
|
|
|
|
int a = 10; // 00001010
|
|
|
|
|
|
int b = 6; // 00000110
|
|
|
|
|
|
|
|
|
|
|
|
WriteLine($"a = {a}");
|
|
|
|
|
|
WriteLine($"b = {b}");
|
2022-05-18 15:58:38 +02:00
|
|
|
|
WriteLine($"a & b = {a & b}"); // 2-bit column only e.g. 00000010
|
|
|
|
|
|
WriteLine($"a | b = {a | b}"); // 8, 4, and 2-bit columns e.g. 00001110
|
|
|
|
|
|
WriteLine($"a ^ b = {a ^ b}"); // 8 and 4-bit columns e.g. 00001100
|
2022-02-18 13:13:25 +01:00
|
|
|
|
|
|
|
|
|
|
// 01010000 left-shift a by three bit columns
|
|
|
|
|
|
WriteLine($"a << 3 = {a << 3}");
|
|
|
|
|
|
|
|
|
|
|
|
// multiply a by 8
|
|
|
|
|
|
WriteLine($"a * 8 = {a * 8}");
|
|
|
|
|
|
|
|
|
|
|
|
// 00000011 right-shift b by one bit column
|
|
|
|
|
|
WriteLine($"b >> 1 = {b >> 1}");
|
|
|
|
|
|
|
|
|
|
|
|
WriteLine();
|
|
|
|
|
|
WriteLine("Outputting integers as binary:");
|
|
|
|
|
|
WriteLine($"a = {ToBinaryString(a)}");
|
|
|
|
|
|
WriteLine($"b = {ToBinaryString(b)}");
|
|
|
|
|
|
WriteLine($"a & b = {ToBinaryString(a & b)}");
|
|
|
|
|
|
WriteLine($"a | b = {ToBinaryString(a | b)}");
|
|
|
|
|
|
WriteLine($"a ^ b = {ToBinaryString(a ^ b)}");
|
|
|
|
|
|
|
|
|
|
|
|
static string ToBinaryString(int value)
|
|
|
|
|
|
{
|
|
|
|
|
|
return Convert.ToString(value, toBase: 2).PadLeft(8, '0');
|
|
|
|
|
|
}
|