Stefan Feismann wrote:
> aber warum muss ich denn binär die zahlen auslesen.
Das weiß ich nicht. Du hast dir die Aufgabe gestellt, die
Tasterzustände als 0 und 1 anzuzeigen und das ganze mit itoa zu machen.
(Und du musst gar nichts auslesen. Zahlen sind in einem Computer einfach
nur Zahlen, nichts weiter. Aber wenn diese Zahlen irgendwo ausgegeben
werden, muss man sich entscheiden, wie sie ausgegeben werden. Du kannst
sie dezimal ausgeben, du kannst sie hexadezimal ausgeben, du kannst sie
binär ausgeben oder du kannst sie auch in jedem beliebigen anderen
Zahlsystem ausgeben. Aber all das sind nur verschiedene Ausgabeformen
der Zahlen. Intern ist alles einfach nur eine Zahl
Das hier: + + + + + + + + +
ist eine Menge von '+'. Die hast du zb in einem Computer. Auf die
Ausgabe schreibst du jetzt zb. 9. Das wäre die Anzahl der Mengenelemente
in dezimaler Form. Du kannst aber auch schreiben 1001. Das wäre dieselbe
Zahl in binärer Form. Oder du schreibst 11 weil du ein Freak bist und
oktale Ausgabe bevorzugst. Oder du lässt auf der Anzeige +++++++++
erscheinen, oder auf der Anzeige steht
'Lisi ist im Stall'
'Erika ist im Stall'
'Lotte ist im Stall'
...
weil jedes '+' eine Kuh repräsentiert, die abends von alleine in den
Stall gegangen ist, oder ....
Das ändert aber nichts an dem was du im Computer hast, nur die Art und
weise wie du ausgibst ändert sich.
Wenns dir Spass macht und für deine Aufgabenstellung zuträglich ist,
hindert dich niemand, das so zu machen
1 | if( PINB & ( 1 << PB0 ) )
|
2 | lcdausgabe( "Taster 0 ist aus" );
|
3 | else
|
4 | lcdausgabe( "Taster 0 ist ein" );
|
Viele Wege führen nach Rom und es liegt an dir den richtigen
rauszufinden, je nachdem was du auf deiner Reise sehen willst.