Seite 1 von 1
Mehre Konstanten zu einer machen
Verfasst: 30.11.2004 16:56
von PBNeuling
Hallo
Ich habe mal wieder ein Problem, wie kann ich mehre Konstanten
zu einer machen. würde mich auf eine Antwort sehr freuen bis dann.
de Andy..
Verfasst: 30.11.2004 18:57
von Lars
Beschreib dein Problem doch mal genauer, ich kann mir da jetzt nichts
vorschlagen und ich denke, ich bin damit nicht alleine

Verfasst: 30.11.2004 19:02
von DarkDragon
Ich denke er meint sowas:
Code: Alles auswählen
#Konstante1 = 1
#Konstante2 = 2
#Konstante3 = #Konstante1 | #Konstante2
Debug #Konstante1
Debug #Konstante2
Debug #Konstante3
Verfasst: 30.11.2004 19:03
von Ynnus
Dann wären die Konstanten k1 und k2 in der 3ten Zusammengefügt.
Verfasst: 30.11.2004 19:33
von Lars
DarkDragon hat geschrieben:Code: Alles auswählen
#Konstante1 = 1
#Konstante2 = 2
#Konstante3 = #Konstante1 | #Konstante2
So weit geht das gut, aber ich will jetzt einfach einem Missverständniss
vorbeugen:
[c]#Konstante3[/c] müsste jetzt 4 sein und nicht, wie manche meinen
könnten, 3. Wenn man sich das ganze binär vorstellt, ist das ziemlich
logisch, dass die Zahlen Potenzen von 2 sein müssen.
Verfasst: 30.11.2004 22:06
von helpy
Lars hat geschrieben:DarkDragon hat geschrieben:Code: Alles auswählen
#Konstante1 = 1
#Konstante2 = 2
#Konstante3 = #Konstante1 | #Konstante2
So weit geht das gut, aber ich will jetzt einfach einem Missverständniss
vorbeugen:
[c]#Konstante3[/c] müsste jetzt 4 sein und nicht, wie manche meinen
könnten, 3. Wenn man sich das ganze binär vorstellt, ist das ziemlich
logisch, dass die Zahlen Potenzen von 2 sein müssen.
Falsch!
dez. 1 => bin. 0001
dez. 2 => bin. 0010
bin. 0001 | bin 0010 = bin. 0011 (=> dez. 3)
cu, helpy
Verfasst: 30.11.2004 22:34
von NicTheQuick
Ich glaube, Lars hatte jetzt nicht daran gedacht, dass die verknüpfte Konstante schon den Namen [c]#Konstante3[/c] hatte.
Er meint damit aber, dass man bei der Vergabe der Konstanten nur exponential mit der Basis 2 vorgehen kann:
Code: Alles auswählen
#Konstante1 = 1
#Konstante2 = 2
#Konstante3 = 4
#Konstante4 = 8
...
#Konstante10 = 512
Oder wie ich es gerne schreibe:
Code: Alles auswählen
#Konstante1 = 1
#Konstante2 = 1 << 1
#Konstante3 = 1 << 2
#Konstante4 = 1 << 3
...
#Konstante10 = 1 << 9
Verfasst: 30.11.2004 23:40
von helpy
NicTheQuick hat geschrieben:
Ich glaube, Lars hatte jetzt nicht daran gedacht, dass die verknüpfte Konstante schon den Namen [c]#Konstante3[/c] hatte.
Er meint damit aber, dass man bei der Vergabe der Konstanten nur exponential mit der Basis 2 vorgehen kann:
Code: Alles auswählen
#Konstante1 = 1
#Konstante2 = 2
#Konstante3 = 4
#Konstante4 = 8
...
#Konstante10 = 512
Nein! Es stimmt nicht,
dass man nur so vorgehen kann. Das hängt ganz von der Art der Verwendung der Konstanten ab!
cu, helpy
Verfasst: 30.11.2004 23:50
von Lars
NicTheQuick hat geschrieben:Ich glaube, Lars hatte jetzt nicht daran gedacht, dass die verknüpfte Konstante schon den Namen [c]#Konstante3[/c] hatte.
Dem hätte ich dann nichts mehr hinzuzufügen, blöde
Konstantenbenennung
helpy hat geschrieben:Es stimmt nicht, dass man nur so vorgehen kann.
Natürlich. Aber sinnvolle
Einzelzustände müssen halt 2er Potenzen
sein. Werte wie 3 können dann halt 1 und 2 kombiniert darstellen (siehe
code).
Code: Alles auswählen
#State1 = 1
#State2 = 2
#State3 = 4
#NewState1 = #State1 | #State2 ;NewState = 3
Debug #NewState1
#NewState2 = #NewState1 | #State3
Debug #NewState2