PHP 位运算符

<?php$a=10;$b=20;$c=4;$d=8;$e=1.0;$f=$c+$d*2;$g=$f%20;$h=$b-$a+$c+2;$i=$h<<$c;$j=$i*$... <?php
$a = 10;
$b = 20;
$c = 4;
$d = 8;
$e = 1.0;
$f = $c + $d * 2;
$g = $f % 20;
$h = $b - $a + $c + 2;
$i = $h << $c;
$j = $i * $e;
print $j;
?>
A.128
B.42
C.242.0
D.256
E.342
我算的是D,但我算的$i=0,所以后面是0,求原因
展开
 我来答
wo吐八哥
2012-09-17 · 超过15用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:36.2万
展开全部
$h=16,$c=4,表达式16<<4的值为256,因为16(即二进制的00010000)向左移四位等于256(即二进制的100000000)
追问
谢谢回答,00010000向左移动四位,那不是把1也移出去了吗?最后空出来的四位填0的话不是应该00000000吗?
追答
呵呵,二进制数的位数并不是只有八位,就像256可以表示成二进制数100000000,512可以表示成1000000000一样,任何数都可以用二进制数表示的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式