phpbar.de logo

Mailinglisten-Archive

[php] Mathematik - gepackten Zahlenwert aufschlüsseln

[php] Mathematik - gepackten Zahlenwert aufschlüsseln

Robert Hartung r.hartung at roberthartung.de
Sa Jan 30 16:37:32 CET 2010


Das ganze sind einfach Bit-Operationen:


0000 0001 = 1
0000 0010 = 2
0000 0100 = 4
0000 1000 = 8
0001 0000 = 16
0010 0000 = 32
0100 0000 = 64
1000 0000 = 128

Das ganze kannst du jetzt mit Bit-Operationen abfragen:

1 & 1 => true (0000 0000 & 0000 00001)
2 & 1 => false (0000 0010 & 0000 0001)
5 & 1 => true (0000 0101 & 0000 0001)

Etc.

Dann gibt’s das logische Entweder-Oder: "^" und das logische or: "|"

Grüße
Robert Hartung

-----Ursprüngliche Nachricht-----
Von: php-bounces at phpbar.de [mailto:php-bounces at phpbar.de] Im Auftrag von
token at gmx.de
Gesendet: Samstag, 30. Januar 2010 16:24
An: php at phpbar.de
Betreff: [php] Mathematik - gepackten Zahlenwert aufschlüsseln

Hallo,

folgendes Problem:

Aus den Zahlenwerten (Potenzen zur Basis 2) 1,2,4,8,16,32 (hat diese
Zahlenreihe einen eigenen Namen?)

Erhalte ich mittels Addition einen neuen Zahlenwert, den ich hier mal als
*gepackten* Zahlenwert bezeichnen möchte, weil ich in diesem neuen
Zahlenwert mehrere Parameter verstauen kann.

Beispiel: 21 = 1 + 4 + 16    (1, 4 und 16 sind meine Kennzahlen bzw.
Parameter)

Wenn ich einer Funktion den Wert 21 übergebe möchte ich nun die Einzelwerte
1, 4, 16 in einem Array zurückbekommen.

Gibt es hierfür eine php-Funktion oder hat jemand bereits eine fertige
Lösung?

--
Gruß

token





--
** Allgemeine deutschsprachige PHP-Liste: php at phpbar.de **
Informationen: http://www.phpbar.de
http://lists.phpbar.de/mailman/listinfo/php


php::bar PHP Wiki   -   Listenarchive