公告
财富商城
积分规则
提问
发文
2019-01-26 10:01发布
Fickle 薄情
This question already has an answer here:
Why does the following code output 128?
<?php print 4 << 5; ?>
Refer to Bitwise Operators:
We have to find 4 << 5. It means shift the bits of 4 5 times to the left:
4
4 is 00000000000000000000000000000100 4 << 5 after shifting is 00000000000000000000000010000000 00000000000000000000000010000000 is 2^7 = 2*2*2*2*2*2*2 = 128
Because it's a bitwise operator. I think it means 4 multiplied to 2^5 because that operator means
Shift the bits of $a $b steps to the left (each step means "multiply by two")
so it's five steps. It's 4 * 2 * 2 * 2 * 2 * 2 (But I'm guessing here; everything happens at bit level).
最多设置5个标签!
Refer to Bitwise Operators:
We have to find 4 << 5. It means shift the bits of
4
5 times to the left:Because it's a bitwise operator. I think it means 4 multiplied to 2^5 because that operator means
so it's five steps. It's 4 * 2 * 2 * 2 * 2 * 2 (But I'm guessing here; everything happens at bit level).