Operacje bitowe

0

$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").

No więc, mam takie ptanko.
Chciałbym wiedzieć jak to komputer oblicza. Tzn. nie o to jak po kolei wykonuje te oblicznia, ale jak je liczy np:

0001
^ - ile wyjdzie ? 2 ?
1000

jak to zapisać w PHP :

<?php echo 0x1^0x8; ?>

??

albo

111100001111001111000000
& - wyjdzie 0 ?
000011110000110000111111

jak zapisywać biniary w php ?
Jak dopisywać i odczytywać pliki w biniary ?

0

0001^1000 = 1001= 9

jak to zapisać w PHP :

<?php echo 1^8; ?>

111100001111001111000000 & 000011110000110000111111 = 0

jak zapisywać, dopisywać i odczytywać pliki BINARNE (tak się to pisze):
fopen(plik, tryb), fread, fwrite, fseek

tryb może być dowolny z poniższych:
'r' - Otwórz tylko do odczytu; ustawia wskaźnik pliku na początku pliku.
'r+' - Otwórz do odczytu i zapisu; ustawia wskaźnik pliku na początku pliku.
'w' - Otwórz tylko do zapisu; ustawia wskaźnik pliku na początku pliku i obcina plik (zeruje) do 0 długości. Jeśli plik nie istnieje to próbuje go utworzyć.
'w+' - Otwórz do odczytu i zapisu; ustawia wskaźnik pliku na początku pliku i obcina plik (zeruje) do 0 długości. Jeśli plik nie istnieje to próbuje go utworzyć.
'a' - Otwórz tylko do zapisu; ustawia wskaźnik pliku na końcu pliku. Jeśli plik nie istnieje to próbuje go utworzyć.
'a+' - Otwórz do odczytu i zapisu; ustawia wskaźnik pliku na końcu pliku. Jeśli plik nie istnieje to próbuje go utworzyć.

Notatka: Parametr tryb może zawierać literę 'b'. To jest użyteczne tylko na systemach, które rozróżniają pliki pomiędzy binarne i tekstowe

0

Dzięki o to mi chodziło

1 użytkowników online, w tym zalogowanych: 0, gości: 1