Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

co oznacza zapis a & 1

Ostatnio zmodyfikowano 2011-04-26 14:36
Autor Wiadomość
markon
Temat założony przez niniejszego użytkownika
co oznacza zapis a & 1
» 2011-04-26 10:35:54
witam
wiem że to koniunkcja, ale co zwróci taki zapis?
a & 1 //a to typ integer
bądź
7 & 4 lub też 1 & 4
co ten operator konkretnie robi?
P-31990
ison
» 2011-04-26 10:41:40
zwykła operacja bitowa and,
porównuje bity w obu liczbach na każdej z pozycji i jeśli oba są jedynkami to dopisuje 1, jeśli nie to dopisuje 0

7 & 4
7: 111
4: 100

  111
& 100
  ___
  100
otrzymamy 100 czyli 4
P-31991
szyx_yankez
» 2011-04-26 10:50:23
P-31992
markon
Temat założony przez niniejszego użytkownika
» 2011-04-26 11:56:56
a mam jeszcze inne pytanie:
wiadomo że liczba jest parzysta ( w systemie bin) jeśli kończy się na zero
jak zatem sprawdzić ostatni znak (zero czy jeden ?) liczby int w systemie bin?
P-31999
ison
» 2011-04-26 12:04:00
ostatni bit liczby?
C/C++
liczba % 2
:)
P-32000
absflg
» 2011-04-26 14:36:23
C/C++
liczba & 1
1 to tylko jedna jedynka na prawo, więc zostawi to tylko ostatni bit ze zmiennej 'liczba'. Szukaj hasła 'maska bitowa' to znajdziesz dokładne opisy. Oczywiście musisz to jeszcze zanegować, żeby uzyskać parzystość (bo teraz 1 wskazuje na nieparzystość), czyli operator negacji, albo negacji bitowej
C/C++
!( liczba & 1 )
liczba & 1 ^ 1
(oba dadzą ten sam wynik).
P-32007
« 1 »
  Strona 1 z 1