Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: operatory binarne
Forum PHP.pl > Forum > Przedszkole
goped
czy moglby mi ktos wyjasnic moi dordzy php'owicze, jak dzialaja te operatory. przeczytalem kilka stron o liczbach binarnych bitach, zamianach dodawaniu ich itp. , ale i tak ciagle nie moge dosjc do czego sluza np. | i & . one robia jakies operacje na bitach, ale ciagle nie moge dosc jakie
Kod
$kolor=2;
$liczbe=3;
$liczba=1;
$liczbaa=4;
$wynik= $liczba | $liczbaa | $liczbaa | $liczbae;

wynik = 5

Kod
$kolor=2;
$liczbe=3;
$liczba=1;
$liczbaa=4;
$wynik= $liczba | $liczbaa | $liczbaa;

wynik = 7
jest to dla mnie po testach na tych operatoach calkowicie pomieszanei nie rozumiem. z gory dziekuje za wszelkie pomoce


ps. prosze bez wiadomosci ze to to samo co && || bo widac w priorytetach, zasadzie dzialania i opisach na wszystkich stronach ze to nie to samo, dziekuje.
mls
Po pierwsze polecam zapoznanie się z systemami liczbowymi, a przede wszystkim z systemem binarnym (dwójkowym). Tekstów na ten temat jest wiele, wystarczy poszukać w googlach... Ot, choćby np.:
http://www.programuj.com/artykuly/rozne/sysliczb.php

A co do operatorów binarnych w php, to:
Kod
$a & $b
  Mnożenie bitowe
    Dany bit wynikowy jest równy 1
    tylko jeśli obydwa bity składowe są równe 1.
$a | $b
  Sumowanie bitowe
    Dany bit wynikowy jest równy 1
    jeśli conajmniej jeden bit składowy jest równy 1.
$a ^ $b
  Sumowanie bitowe modulo 2
    Dany bit wynikowy jest równy 1
    wtedy i tylko wtedy, kiedy jeden z bitów składowych
    jest równy 1 a drugi jest równy 0.
~ $a
  Negacja bitowa
    Bity w zmiennej $a mające wartość 1
    otrzymują wartość 0 i na odwrót.
$a << $b
  Przesunięcie w lewo
    Przesuwa bity w zmiennej $a o $b kroków
    w lewo (każdy krok znaczy "pomnożone razy dwa").  
$a >> $b
  Przesunięcie w prawo
    Przesuwa bity w zmiennej $a o $b kroków
    w prawo (każdy krok znaczy "podzielone przez dwa").


http://www.php.net/manual/pl/language.operators.bitwise.php
goped
wiesz, mnie nie chodzilo o cytat i odeslanie do manuala, bo poszukalem solbie, i nie rozumiem oco chodzi wlasnie w opisie w manualu, a o kodzie binarnym tez czytalem, i jak narazie nie pasuje do sobie
chcialbymn wiedziec co one robia.
Parti
Kod
   a = 5 = 0101
   b = 3 = 0011
a|b = 7 = 0111
a&b = 1 = 0001
a^b = 6 = 0110


Czytaj tutoriale o systemie dwójkowym, aż zrozumiesz. Bo musisz wiedzieć, że są na tym świecie rzeczy, które albo rozumie się od razu, albo nie zrozumie się nigdy.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.