5.2.20
03/29/20
Last Modified 06/30/19 by Walter Tasin
AlgoDat_U8 Reload Page

Algorithmen und Datenstrukturen

Übung zum Kapitel "Bitmanipulationsoperatoren"

W. Tasin, M.Sc.

Für Ingenieurinformatik nicht prüfungsrelevant


Theoretische Fragen

  • Ergänzen/Korrigieren Sie die folgenden unvollständige Codefragmente unter Verwendung von Bitmanipulationsoperationen:
    wert ist dabei eine Ganzzahlvariable.
printf("Wert ist ");
if ((wert        )!=0)
  puts("ungerade.")
else
  puts("gerade");

/* Setze Bit 7 von wert */
wert=                      ;

/* Lösche Bit 8 und alle höherwertigen Bits von wert */
wert=                      ;

int wert=0x55;
/* Toggle die Bits 0-7 der Variablen Wert */
wert=                      ;
printf("Wert = %X\n", wert);

  • Welcher Wert befindet sich in zahl nach Ablauf der jeweiligen Codefragmente:
short zahl=4;
zahl=zahl>>1;

short zahl=-4;
zahl=zahl>>1;

int zahl=12;
zahl=zahl<<2;

signed char zahl=64;
zahl=zahl<<1;

int zahl=0x80;
zahl=zahl ^ -1;
zahl=zahl & 0xFF;

  • Was macht das folgende Programm?

#include <stdio.h>

int main()
{
    unsigned char expo=0;

    while (expo<32)
    {
        printf("%10u (0x%08X)\n", 1u << expo, 1u << expo); 
        expo=expo+1;
    }
    return 0;
}


Links

Uebungen Algorithmen und Datenstrukturen
Unterlagen Algorithmen und Datenstrukturen
Praktikum Algorithmen und Datenstrukturen
Zur Hauptseite