Hallo zusammen,
namespace _2_4_Operatoren____4_Bitweise_Operatoren
{
class Program
{
static void Main(string[] args)
{
int zahl1 = 60;
int zahl2 = 13;
// bitweise darstellung der Zahlen
Console.Write("Die Bitweise Darstellung der Zahl {0} lautet: ", zahl1);
Console.WriteLine(Convert.ToString(zahl1, toBase: 2));
Console.Write("Die Bitweise Darstellung der Zahl {0} lautet: ", zahl2);
Console.WriteLine(Convert.ToString(zahl2, toBase: 2));
Console.WriteLine();
Console.WriteLine("Taste drücken um fortzufahren:");
Console.ReadKey();
Console.WriteLine();
// Ausgabe der bitweisen Darstellung der Zahlen, verbunden durch &
int zahl3 = zahl1 & zahl2;
Console.Write("Die bitweise Darstellung der Zahlen, verbunden durch & lautet: ");
Console.Write(Convert.ToString(zahl3, toBase: 2));
Console.WriteLine(" ({0})",zahl3);
Console.WriteLine();
Console.WriteLine("Taste drücken um zu beenden:");
Console.ReadKey();
}
}
}
Mir ist überhaupt nicht klar, wie der bitweise Operator & Funktioniert. Wie resultiert aus 60&13 zwölf? Was macht dieser Operator genau mit der bitweisen Darstellung der Zahlen?
Hallo Rafael,
ein & liefert nur dann eine 1, wenn beide eingehenden bits ebenfalls 1 entsprechen.
Leider rückt Dein Programm die binäre Darstellung nicht ein.
60: 00111100 13: 00001101 ____________
Nun kannst Du wie bei einer Addition die Spalten untereinander übernehmen, wo in beiden eine 1 drin steht. Der Rest bleibt 0.
Das ergibt die binäre Darstellung von 12. Eine 1 bei 4 und eine weitere bei 8.
Hallo RafaelVogt,
vorsorglich der Hinweis zu [Hinweis] Wie poste ich richtig? Punkt 1.1.
Google-Suche nach bitweise operationen -> Bitweiser Operator
mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"
Ich habe beides bemüht. Eine menschliche Erklärung hat mir dann doch wieter geholfen. Aber ja generell werde ich darauf achten. Ist ja noch ein langer Weg.