php中的二进制,为什么是63位?
我正在使用的系统和PHP版本:php中的二进制,为什么是63位?,php,binary,Php,Binary,我正在使用的系统和PHP版本: 操作系统:Centos 7 x86_64 PHP:PHP7.2 网址: 代码: 问题是: 最小值的二进制数是64 最大的二进制数是63,为什么? 谢谢您的回答。因为$b中最左边的位是0,无法打印 尝试打印decbin($a)(因为$a是8)以查看它不会打印为64位,而只打印为4位 如果要显示最左边的0,请使用sprintf格式化字符串,如中所示 echo "The binary of \$b: " . sprintf("%064b", decbin($b)
- 操作系统:Centos 7 x86_64
- PHP:PHP7.2
- 最小值的二进制数是64
- 最大的二进制数是63,为什么?
谢谢您的回答。因为
$b
中最左边的位是0,无法打印
尝试打印decbin($a)
(因为$a
是8)以查看它不会打印为64位,而只打印为4位
如果要显示最左边的0,请使用sprintf
格式化字符串,如中所示
echo "The binary of \$b: " . sprintf("%064b", decbin($b)) . "\n";
将格式字符串中的
64
替换为要显示的位数。因为$b
中最左边的位是0,并且不会被打印出来
尝试打印decbin($a)
(因为$a
是8)以查看它不会打印为64位,而只打印为4位
如果要显示最左边的0,请使用sprintf
格式化字符串,如中所示
echo "The binary of \$b: " . sprintf("%064b", decbin($b)) . "\n";
将格式字符串中的
64
替换为您希望显示的位数。还有一个0,因为2是补码表示。二进制$a:1000
。我理解。谢谢你的帮助。还有一个0,因为2的补码表示。二进制的$a:1000
。我理解。谢谢你的帮助。
echo "The binary of \$b: " . sprintf("%064b", decbin($b)) . "\n";