Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Andre, > > sorry, man sollte Beispiele immer per Copy&Paste übertragen und nicht abtippen. > > Bitte probieren es mit > > a=0b11111111111111111111111111111111; > b=0b10000000000000000000000000000000; > > nochmals aus (vorher war es ja im Wertebereich eines int - habe falsch abgetippt). > > Jetzt wirst Du das Problem direkt nachvollziehen können. > > Danke für Deinen Support. > > Beste Grüße > Thomas > > > > > Hallo Thomas, > > > > > eine Frage zur If-Abfrage: Hat diese Probleme mit dem Datentyp long? > > > > Ich weiß nicht, wo das Problem sein soll. > > Ich habe diese Zeilen sicherheithalber nocheinmal sowohl im Simulator, als auch > > in der CC2 getestet. Es funzt alles so, wie es soll. > > > > > <code> > > > long a,b,r; > > > > > > a=0b1111111111111111; > > > b=0b1000000000000000; > > > > > > r = a and b; > > > // a and b ist ungleich Null > > > // r ist ungleich Null > > > > > > if a and b { > > > // läuft hier aber nicht rein?? > > > }</code> > > Bei meinen Tests werden hier korrekt die Anweisung If-bedingt ausgeführt. > > > > > <code>if r { > > > // läuft hier aber nicht rein?? > > > }</code> > > > > Auch hier wird es richtig ausgeführt, da r ungleich 0, somit also true, ist. > > > > > <code>if r != 0 { > > > // hier funktioniert es??!! > > > }</code> > > > > Dies muß auch funzen. Dies ist im Prinzip fast dasselbe, wie die vorherige If-Abfrage, > > nur, daß hier ein echter True(-1) erzeugt wird, sobald mindestens ein Bit High ist. > > > > > > > <code>r = 1; > > > > > > if r { > > > //mit "kleinem" r funktioniert es??!! > > > } > > > </code> > > Mit "klein" beziehst Du Dich auf den Wert. Natürlich muß das funzen. ;-) > > > > Und hier noch das abgeänderte Testproggie, um es direkt in der CC2 zu testen: > > <code>long a,b,r; > > > > thread main > > { > > a=0b1111111111111111; > > b=0b1000000000000000; > > > > r = a and b; > > // a and b ist ungleich Null > > // r ist ungleich Null > > > > if a and b > > {// funzt > > plm.beep(5); > > sleep 250; > > plm.beep(-1); > > sleep 500; > > } > > > > if r > > {// funzt > > plm.beep(5); > > sleep 250; > > plm.beep(-1); > > sleep 500; > > } > > > > if r != 0 > > {// funzt > > plm.beep(5); > > sleep 250; > > plm.beep(-1); > > sleep 500; > > } > > > > r = 1; > > > > if r > > {// funzt > > plm.beep(5); > > sleep 250; > > plm.beep(-1); > > sleep 500; > > } > > quit 1; > > }</code> > > Auf der betreffenden Unit läuft z.Zt. OSOPT V3.1beta. Es ist aber in dieser Hinsicht > > identisch zu OSOPT V3.0 und OSOPT_V2. > > > > MfG André H. > >