C++ Kurs

Wenn fertig, bitte Fenster schließen

Lösung zur Lektion "Bit- und Schiebeoperationen"


// Zuerst Dateien iostream und iomanip einbinden
#include <iostream>
#include <iomanip>

using std::cout;
using std::endl;

// Variablen definieren und initialisieren
short shortVar = 10;
char charVar = 0x55;

// main() Funktion
int main ()
{
   // charVar als Binärzahl ausgeben
   cout << "0x" << std::hex << static_cast<int>(charVar) << " nach binär: ";
   // Ausgabe des binär Wertes. Dazu wird das Bit n (n=7..0) ins
   // Bit 0 geschoben, alle Bits ausser dem Bit 0 ausmaskiert
   // und dann der Wert ausgegeben.

   cout << ((charVar>>7)&0x01);
   cout << ((charVar>>6)&0x01);
   cout << ((charVar>>5)&0x01);
   cout << ((charVar>>4)&0x01);
   cout << ((charVar>>3)&0x01);
   cout << ((charVar>>2)&0x01);
   cout << ((charVar>>1)&0x01);
   cout << ((charVar)&0x01) << endl;

   // Bilden des Komplements einer Zahl
   cout << std::dec << "Das 1er Komplement von 10: ";
   shortVar = ~shortVar;
   cout << shortVar << endl;
   // Bilden des 2er Komplements
   cout << "Und eins dazuaddiert ergibt: ";
   shortVar++;
   cout << shortVar << endl;
}