goassensepp
Grünschnabel
hallo
ich beschäftige mich nun schon einige stunden mit dieser aufgabe und komme einfach nicht auf meinen fehler. deswegen hoffe ich dass mir hier geholfen werden kann.
ich soll das bitmuster einer ganzen zahl mit hilfe der bitoperatoren ( >> und &) ausgeben lassen. Dazu stand noch folgender hinweis:
Für das Verständnis des Algorithmus ist die Anordnung der Bits wichtig. Wir betrachten nur den Betrag der Zahl, so dass uns nur die ersten 31 Bits interessieren. Das höherwertigste Bit des Betrags soll dabei Bit 30 und das niederwertigste Bit soll Bit 0 sein. Bit 30 sei bildlich ganz links und Bit 0 ganz rechts angeordnet.
Ich habe dazu folgenden Code programmiert:
danke schonmal im voraus!!
ich beschäftige mich nun schon einige stunden mit dieser aufgabe und komme einfach nicht auf meinen fehler. deswegen hoffe ich dass mir hier geholfen werden kann.
ich soll das bitmuster einer ganzen zahl mit hilfe der bitoperatoren ( >> und &) ausgeben lassen. Dazu stand noch folgender hinweis:
Für das Verständnis des Algorithmus ist die Anordnung der Bits wichtig. Wir betrachten nur den Betrag der Zahl, so dass uns nur die ersten 31 Bits interessieren. Das höherwertigste Bit des Betrags soll dabei Bit 30 und das niederwertigste Bit soll Bit 0 sein. Bit 30 sei bildlich ganz links und Bit 0 ganz rechts angeordnet.
Ich habe dazu folgenden Code programmiert:
Code:
#include <stdio.h>
int main()
{
int dezimal=0, aktBit=0;
printf("Geben Sie bitte eine Dezimalzahl ein: ");
scanf("%i", &dezimal);
if (dezimal <= 0) {
printf("Die Zahl muss groesser Null sein!\n");
}
else{
printf("Die zugehoerige Binaerzahl lautet: ");
for(dezimal=30; dezimal >= 0; dezimal ++) {
aktBit = (dezimal >> (31 - dezimal)) & 0x00000001;
printf("%i", &aktBit);
}
}
printf("\n");
}
danke schonmal im voraus!!