PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : logisch AND in Bascom?



Adam
25.11.2004, 18:11
Hallo,
wie ist das Zeichen für logisch - AND in Bascom. in C z.b. ist das | wie sieht es in bascom damit aus, konnte in der hilfe nichts passendes finden.

x-ryder
25.11.2004, 18:18
man schreibt einfach "and"

Martin

PicNick
25.11.2004, 19:16
Hoppala: In C ist das ein & | ist "oder" beides wiederum nicht zu verwechseln mit && und || (das zu verwechseln, genau wie = und == sind Stunden und Nächte Fehlersuche)
Is aber eh wurst, wenn die BASic schreibst. mfg

Adam
25.11.2004, 19:30
ups :) danke, hast recht! :)

aber wie soll ich dann dies hier verstehen?
outportb(PORTB,LCGCMD|LCGRD|LCGDIS)
sende an portb, lcgcmd ODER lcgrd ODER lcgdis ? Hym ... nach welchen kriterien werden dann die Sendebefehle ausgeführt (die LCG* sind konstanten)

25.11.2004, 19:48
in dem Fall heißt das, daß er LCGCMD, LCGRD u. LCGDIS odert und ausgibt, d.h alle Einser setzen sich durch.
das diese Werte NICHT die gleichen Einser haben, kannst du sie natürlich genausogut addieren.
Bei einem (logischen) AND aber ist im Ergebnis nur dort ein Einser, wolle ALLE einen Einser haben, im Konkreten Fall also nirgends.
Ausreichend Verwirrt ? mfg :-)

Adam
25.11.2004, 20:26
heißt das jetzt, das ich alle Konstanten (LCGCMD|LCGRD|LCGDIS) einfach addieren könnte und dann ausgeben könnte?
#define LCGCMD 0x14
#define LCGRD 0x12
#define LCGDIS 0x10
--------------------------------------
#define KONST 0x2c

outportb(portb,KONST) <- währe das jetzt das gleiche? oder versteh ich da was falsch ? :]

25.11.2004, 21:16
Hallo

Dein Vorredner sollte sich seine Aussagen noch mal durch den Kopf gehen lassen, da beide Aussagen falsch sind.


das diese Werte NICHT die gleichen Einser haben, kannst du sie natürlich genausogut addieren.

Kommt wohl nicht ganz das gleiche heraus, bei einer Addition.



wolle ALLE einen Einser haben, im Konkreten Fall also nirgends.

Das MSb ist in allen 3 Fällen 1, damit wäre ein AND Verknüpfung 10000.


@Adam

Du must dir die Variablen binär anschauen und dann verknüpfen.

0x14 = 10100
0x12 = 10010
0x10 = 10000

ODER verknüpft ergibt das 10110 = 0x16

MFG
Dieter

PicNick
26.11.2004, 13:35
Hallo, kluger Dieter, gibst du auch Kurse ?
Wenn die Werte NICHT die gleichen Einser haben, kannst du addieren oder odern, is wurscht.
Wenn die Werte NICHT die gleichen Einser haben, kommt bei AND nix raus
Anderenfalls ist natürlich anders, deswegen heißt's anderenfalls.
Wenn diese Aussagen falsch sind, dann schreib doch mal dem Freddy Boole eine Mail, der freut sich sicher

Adam
26.11.2004, 13:53
Danke Dieter, das leuchtet mir alles so ein! :) Werde das ausprobieren, danke!