-1

我正在尝试使用 php 逻辑运算符做简单的程序,当我尝试使用 ~ 运算符反转二进制值时,它给出了一些符号,而不是实际的反转值,当我尝试使用 <<,>> 移动位时,它没有'不给期望值,帮帮我?这是简单的编码

<?php
$n=10;
$bin=decbin($n);
echo $bin;
//for onces complement
$com_value=~$bin; //this statement prints some IIIIIIIIIIIIIIII symbol instead of inverted value
echo $com_value;
$shift_value=$bin<<1;
echo $shift_value; //this  printing 2020 as result for binary number of ten 1010
?>

帮助我获得正确的价值,我必须使用它来完成一项任务,在此先感谢

4

1 回答 1

2

decbin返回 a string,即01字符的序列,具有 的二进制表示$n。这是不正确的,因为您要在二进制~值上执行,这只是. 尽管在源代码中“看起来像十进制”,但它在您的内存中存储为 0 和 1。<<$n$n

尝试将该转换删除为字符串并$n直接使用。

于 2013-08-25T16:24:15.080 回答