Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> operatory binarne
goped
post
Post #1





Grupa: Zarejestrowani
Postów: 156
Pomógł: 0
Dołączył: 28.11.2003
Skąd: gliwice

Ostrzeżenie: (0%)
-----


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.


--------------------
www.motorower.com.pl - kup sobie cos :]
Go to the top of the page
+Quote Post
mls
post
Post #2





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


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


--------------------
Go to the top of the page
+Quote Post
goped
post
Post #3





Grupa: Zarejestrowani
Postów: 156
Pomógł: 0
Dołączył: 28.11.2003
Skąd: gliwice

Ostrzeżenie: (0%)
-----


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.


--------------------
www.motorower.com.pl - kup sobie cos :]
Go to the top of the page
+Quote Post
Parti
post
Post #4





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 22.07.2004

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 18:42