Re: Zahl im Binärformat ausgeben Kategorie: Programmierung (von wema - 29.01.2006 23:36) | ||
Als Antwort auf Re: Zahl im Binärformat ausgeben von André H. - 29.01.2006 17:15 | ||
| ||
> Hallo wema, > > Krassos hat zwar schon die beste lösung geschrieben, jedoch noch eine Anmerkung > zum Einsatz von Strings, da Du einzelne Ziffern mit print-Funktionen ausgibst: > > > > > > > > > function dez_zu_bin(byte wert) > > > > { > > > > byte schleifenzaehler; > > > > for schleifenzaehler= 0 ... 7 > > > > { > > > > if wert and (1 shl schleifenzaehler) rblcd.print("1"); > > > > else rblcd.print("0"); > > > > } > > > > } > > > > > > Gib' einzelne Zeichen immer mit put-Funktionen aus. > Also lieber rblcd.put('1');, als rblcd.print("1");. > Die Ausführungsgeschwindigkeit wird dann um ein vielfaches gesteigert. > Um Ziffern über ein LCD auszugeben, kann man auch die ziff()-Funktion von rblcd.c2 und > lcdext.c2 verwenden. > Was Deine Binärausgabe betrifft: > Die Funktion keinerlei If-Bedingung. Das geht so viel einfacher: > function dez_zu_bin(byte wert) > {byte schleifenzaehler; > for schleifenzaehler= 0 ... 7 rblcd.ziff((wert shr schleifenzaehler) and 1); > } > > Am idealsten geht es aber, wie krassos schon schrieb, mit str.putintf(); : > function dez_zu_bin(byte wert) > {string s; > s=""; > str.putintf(s,wert,-8); > rblcd.print(s); > } > > MfG André H. > Hallo André, junge, junge. Man lernt eben nie aus. Was Du mir hier noch zu zum Nachdenken gibst, sind ja richtig schicke Feinheiten. ;-)) Vielen Dank, werde in den kommenden Wochen einmal mein Programm diesbzgl. etwas aufforsten. Dir und allen anderen noch einen schönen Abend, wema | ||
Antwort schreiben Antworten: Re: Zahl im Binärformat ausgeben (von André H. - 8.02.2006 8:24) |