Logischer Operator/Große Zahlen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

nilfor

Betreff: Logischer Operator/Große Zahlen

BeitragMo, Apr 19, 2010 19:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

ich wollte mal fragen ob es auch "NAND" und "NOR" als logische Operatoren gibt. Außerdem wollte ich wissen ob Variablen nur begrenzt groß sein können, wie das z.B. bei C++ der Fall ist.

lg nilfor

Xeres

Moderator

BeitragMo, Apr 19, 2010 19:27
Antworten mit Zitat
Benutzer-Profile anzeigen
NAND? Not And bzw. Not OR?
Klar können die Variablen nur begrenzte Werte enthalten, siehe Datentypen.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Thunder

BeitragMo, Apr 19, 2010 19:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Abgesehen davon, dass ich keine Ahnung habe, was NOR und NAND sind: Ja, jede Variable hat ihre maximale Kapazität, das ist in jeder Programmiersprache so. Integer-Variablen in BB haben ein Maximum von (256^4/2)-1 und ein Minimum von -1*(256^4). String-Variablen können (theoretisch) 2GB groß werden, praktisch ist das natürlich nicht möglich.


mfg Thunder

Edit: zu spät.

Edit2: Die Größe für Strings ist in der OH ziemlich schwammig formuliert. Zitat: "Größe: 4 Byte + Zeichenlänge * 1 Byte"
4 Byte + Zeichenkettenlänge* 1 Byte + 1 Byte (Nullterminierungszeichen!)
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit
 

nilfor

BeitragMo, Apr 19, 2010 19:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Tut mir leid wenn hier ein Missverständniss vorliegt. Mit "NAND" und "NOR" meinte ich z.B. http://de.wikipedia.org/wiki/NOR-Gatter. Ich wollte, dass die Bits einer Zahl mit so einem Gatter verknüpft werden.

z.B.
1010 NAND 1100= 0111

mfg nilfor

Xeres

Moderator

BeitragMo, Apr 19, 2010 19:41
Antworten mit Zitat
Benutzer-Profile anzeigen
@Thunder: Strings sind in BB nicht Nullterminiert, die 4Byte Integer gibt schon die Länge des Strings an.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Thunder

BeitragMo, Apr 19, 2010 19:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Das sind anscheinend nur invertierte Funktionen: Du müsstest also immer statt "x NOR y" , "Not (x Or y)" bzw statt "x NAND y" , "Not (x And y)" schreiben.

mfg Thunder

Edit: Xeres: Ich dachte die 4 Byte stehen für den Zeiger auf den String? Wie sollte man sonst auf ihn zugreifen.
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit
 

nilfor

BeitragMo, Apr 19, 2010 19:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke erstmal für die schnellen Antworten.

@Thunder
Das hatte ich mir auch schon überlegt, allerdings setzte "NOT" jede Zahl, die größer als 0 ist, auf 0.
Also wäre das Ergebnis aus meine Beispiel 0 und nicht 7.

Noobody

BeitragMo, Apr 19, 2010 19:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Thunder: Der Zeiger auf den String ist in der Variable gespeichert, die auf den String zeigt. Der String selbst aber besteht aus einer Längenangabe aus 4 Bytes und Länge*1 Byte Daten. Im Prinzip ist also ein String 4 Bytes + Länge*1Byte gross, und jede Variable, die auf einen String zeigt, genau 4 Bytes.

nilfor: So verwirrend es auch ist, Not in BB ist kein binäres Not, sondern ein logisches Not, während And, Or und Xor alle binär arbeiten. Das binäre Not wird durch die Tilde ~ repräsentiert. Beispiel: BlitzBasic: [AUSKLAPPEN]
Print Bin( 5 )
Print Bin( ~5 )
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun
 

nilfor

BeitragMo, Apr 19, 2010 19:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok jetzt hab ichs verstanden. Vielen Dank an alle!

Thunder

BeitragMo, Apr 19, 2010 19:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Achso, dass Not nicht binär arbeitet wusste ich nicht. Wieder was dazu gelernt Very Happy

Also sind die 4 Bytes für die Längenangabe und bei der Rechnung sind die 4 Bytes für den Zeiger gar nicht eingerechnet so wie ich das sehe. Ok, danke.

mfg Thunder
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group