Wer kann mir mit einer Aufgabe helfen?

Hier landen Posts, die keine Wissensfrage erhalten, sondern einen Dummen suchen.
Antworten
PipeCastillo88
Beiträge: 2
Registriert: Di Jun 30, 2020 4:54 pm

Wer kann mir mit einer Aufgabe helfen?

Beitrag von PipeCastillo88 » Di Jun 30, 2020 4:58 pm

Hallo,

Ich habe gerade ein grösses Porblem, da ich eine Aufgabe nicht lösen kann!
Kann einer dabei helfen?

Es geht um eine C Aufgabe!

Danke im Voraus!

PipeCastillo88
Beiträge: 2
Registriert: Di Jun 30, 2020 4:54 pm

Re: Wer kann mir mit einer Aufgabe helfen?

Beitrag von PipeCastillo88 » Di Jun 30, 2020 5:02 pm

1 Bitfiddling

Da in diesem Semester keine Arduinos und blinkenden Leds
eingesetzt werden können, werden diese einfach simuliert, indem statt der blinkenden
Leds Ausgaben auf der Konsole erfolgen. Die Bitoperationen werden auf die Variable
char leds durchgeführt. Der Zustand der Bits kann mit der folgenden Funktion auf
der Konsole ausgegeben werden:

Code: Alles auswählen

// Zeichen in Bitstring konvertieren
char *showbits(char c)
{
 static char s[12]; // enthält die Bitfolge als String
 int i, m;
 // i - Laufindex im String: 0...7
 // m - Bitmaske zur Pruefung des Bits: 7...0
 for(i = 0, m = 7; i < 8; i++, m--)
 s[i] = c & (1 << m) ? '1' : '0';
 s[i] = '\0';
 return s;
}
Gehen Sie bei dieser Aufgabe so vor, dass Sie jede Aufgabe als eigene Funktion
implementieren, die von main() aufgerufen wird.

a. Bit 4 ein- und ausschalten – Funktion auf1a()
Setzen Sie leds zunächst auf 0 und schalten Sie dann das Bit 4 mit den Operationen
Bit-Oder und Bit-Und (| und &) in einer Schleife 5 mal ein und dann wieder aus. Geben
Sie jeweils die Bitfolgen auf der Konsole aus.

b. Bit 3 und Bit 5 ein- und ausschalten – Funktion auf1b()
Setzen Sie leds auf 12910 bzw. 8116 und schalten Sie dann das Bit 3 und das Bit 5 mit
den Bitoperationen | und & in einer Schleife 5 mal ein und dann wieder aus ohne den
Zustand der anderen Bits zu beeinflussen. Geben Sie jeweils die Bitfolgen auf der
Konsole aus.

c. „Lauflicht“ über alle 8 Bits – Funktion auf1c()
Setzen Sie zunächst leds auf 0. Dann laufen Sie in einer Schleife durch leds und
schalten jeweils 1 Bit beginnend mit Bit 0, dann Bit 1 usw. ein und wieder aus. Nutzen Sie
dazu die Shift-Operation und zeigen Sie jeden Schritt auf der Konsole an.

d. Zufallszahlen als Bitmuster – Funktion auf1d()
Generieren Sie in einer Schleife 10 Zufallszahlen im Bereich von 0 bis 255 und stellen
Sie diese als Bitmuster auf der Konsole dar.

e. Zeichen als Bitmuster – Funktion auf1e()
Lesen Sie von der Konsole einen String ein und geben Sie den String Zeichen für
Zeichen als Bitmuster auf der Konsole aus.

Edit by Xin: Codetags hinzugefügt

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8572
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Wer kann mir mit einer Aufgabe helfen?

Beitrag von Xin » Fr Jul 03, 2020 2:53 pm

Vielleicht, um da ein Missverständnis auszuräumen...

Das Board ist dafür da, dass da Anfragen drin landen, die genau so gestellt sind, wie Du sie gestellt hast: "Macht mal."
Das Board ist nicht dafür da, Deine Arbeit anderen auf's Auge zu drücken.... :D

Um also Deine Frage zu beantworten: Ich denke, ich kann Dir helfen. Hast Du denn weitere Fragen zur Sache? ^^
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

nufan
Wiki-Moderator
Beiträge: 2479
Registriert: Sa Jul 05, 2008 3:21 pm

Re: Wer kann mir mit einer Aufgabe helfen?

Beitrag von nufan » Sa Jul 04, 2020 10:51 am

Der Vollständigkeit halber: Ich habe das Thema in dieses Board verschoben.

Antworten