Page 1 of 1

MPR-Update: BIT-Befehle: BIT\[and|or|xor|not|set|clr|toggle|get

Posted: 29. Jul 2018, 08:42
by Theo_Gottwald
Geht man tiefer in die Technik hat man auch schon Mal mit "gesetzten oder nicht gesetzten Bits" zu tun.
Dafür musste man bisher in die Mathematik einsteigen, hier für gibt es nun den BIT\-Befehl.

Code: Select all

BIT\[and|or|xor|not|set|clr|toggle|get]|p1|p2[>$$var]
Mit diesem Befehl können Bit-Operationen mit den Parameter vorgenommen werden.

Die Befehle "and", "or", "xor" und "not" verknüpfen "p1" und "p2" bitweise mit der entsprechenden Operation
miteinander. p1 und p2 werden dabei als 32-Bit-Werte im Zweierkomplement betrachtet.

"set" - setzt das Bit p2 in p1
"clr" - löscht das Bit p2 in p1
"toggle" - ändert das Bit p2 in p1 (von 0 auf 1 oder umgekehrt)
"get" - gibt den Wert des Bits p2 in p1 zurück.

Das Ergebnis wird einer programminternen Variablen zugewiesen, auf die Sie mit der Zeichenfolge "$v1$" zugreifen können. Wenn Sie am Ende des Datenteils das Zeichen ">" und danach einen Variablennamen angeben ("$$xyz"), wird das Ergebnis direkt in diese Variable geschrieben.

Beispiele:

Code: Select all

BIT\and|4|1                           ' $v1$ = 0
BIT\or|4|1                            ' $v1$ = 5
BIT\set|4|1>$$xyz                     ' $$xyz = 5
BIT\get|4|1                           ' $v1$ = 0
BIT\not|65535                         ' $v1$ = -65536 (not(0000ffff) -> ffff0000)