+ 1

Hello every body, I do this code

<? Php Var_dump(5&4); ?> And the result is: Int(4) I don't understand what mean that can any one explain what you mean that and thank in advance.

27th Sep 2019, 9:50 PM
Ghada Ben Khalifa
Ghada Ben Khalifa - avatar
2 Answers
+ 3
5 in binary is 0101 4 in binary is 0100 Let's see what will happen when you use & (and) bitwise operator on integer operands, 0101 0100 & 0100 0100 is 4 in decimal number system (your output). I hope that you are familiar with logical & (and) operator, and that you already know how it works: true & true, gives true true & false, gives false false & true, gives false false & false, gives false Now imagine that true is 1 and false is 0, then apply the same logic to every bit. In your example: 0101 0100 & 0100 Let's start with right-most bit 1 & 0 will give 0 0 & 0 will give 0 1 & 1 will give 1 0 & 0 will give 0 The result is 0100 which is 4 in decimal number system. _____________________________ You can check if the number is even or odd by using & bitwise operator and number 1: 0101 5 0001 & 1 & 0001 1 if the output is equal to 1, then the number is odd if the output is equal to 0, then the number is even. More info: https://www.sololearn.com/learn/4072/?ref=app
27th Sep 2019, 10:18 PM
voja
voja - avatar
0
Think a lot! 😁
27th Sep 2019, 10:20 PM
Ghada Ben Khalifa
Ghada Ben Khalifa - avatar