Forum Doku Wiki Blog

Forumsarchiv 1999, November
Wofuer gibt es Bit-Operatoren?

archivierte Beiträge lesen

  1. (JAVASCRIPT) Wofuer gibt es Bit-Operatoren? von Kilian Mueller, 20. 11. 1999, 22:35

Wofuer gibt es Bit-Operatoren?

Der folgende Beitrag wurde am 20. 11. 1999, 22:35 Uhr von Kilian Mueller veröffentlicht.

Hallo Forum
http://www.teamone.de/selfhtml/tebf.htm#a5
Ich frage diese Frage aus reinem Interesse:
Wieso sollte der Programmierer einer Page etwas bei den internen Speichervorgaengen des Users veraendern wollen?
Denn dafuer sind diese Operatoren, soweit ich das verstanden habe, ja da.
Danke im voraus,
  Kilian

Wofuer gibt es Bit-Operatoren?

Der folgende Beitrag wurde am 20. 11. 1999, 23:32 Uhr von Michael veröffentlicht.

Hallo Kilian,

also Bit-Operatoren dienen nicht dazu willkürlich im Speicher des Benutzers rumzupfuschen, sondern die Bits von Javascript-Zahlen zu manipulieren. Jede Zahl läßt sich ja auch als Binärzahl (Zahl aus Nullen uns Einsen) schreiben.

Beispiele:
5 >> 2    schriebt die Bits von 5 um zwei Stellen nach rechts 000101 -->000001 = 1
5 << 2    schriebt die Bits von 5 um zwei Stellen nach links   000101 -->010100 = 20
Bei UND und ODER sind auch zwei Operanden da und die werden dann stellenweise verknüpft.
Bei UND gilt, wenn beide Bits 1 sind dann ist das Ergebnisbit auch 1, sonst 0:
0100 = 5
&0101 = 6
0100 =5
Bei ODER gilt, wenn mindestens ein Bits 1 sind dann ist das Ergebnisbit auch 1, sonst 0:
0100 = 5
0101 = 6
0101 =6

Manchmal ist es ganz nützlich bestimmte Informationen als Bitmuster darzustellen und zu verarbeiten. Deshalb sind diese Operatoren in vielen Programmiersprachen enthalten.

Gruß
   Michael

Wofuer gibt es Bit-Operatoren?

Der folgende Beitrag wurde am 20. 11. 1999, 23:40 Uhr von Steffen Gerlach veröffentlicht.

Hallo!

> Wieso sollte der Programmierer einer Page etwas bei den internen Speichervorgaengen des Users veraendern wollen?
> Denn dafuer sind diese Operatoren, soweit ich das verstanden habe, ja da.

Nein, diese Bit-Operatoren nehmen eine ganz normale Verknüpfung zweier Werte vor, wie z.B. auch + oder -, nur daß sie eben in JavaScript seltener benötigt werden. Die Beschreibung in SelfHTML ist vielleicht etwas mystisch geraten. Es handelt sich um Operationen über Ganzzahlen, aber auf der Ebene der binären Darstellung.

a<<n ... das Ergebnis ist a mit n angehängten binären Nullen
a>>n ... das Ergebnis ist a ohne die letzten n Binärstellen
a & b ... im Ergebnis sind genau die Binärziffern 1, die in a _und_ b 1 sind
a b ... im Ergebnis sind genau die Binärziffern 1, die in a _oder_ b 1 sind
a ^ b ... im Ergebnis sind genau die Binärziffern 1, die _entweder_ in a _oder_ in b 1 sind

Beispiele für die Anwendung wären:

1<<n ... berechnet 2 hoch n
a = a ^ 1<<n ... schaltet das n-te Bit in der Integer-Variablen a um
if (a & 1<<n) ... wird ausgeführt, wenn das n-te Bit in der Integer-Variablen a gesetzt ist

Gruß
Steffen

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4