二进制有多少种可能性?

时间:2010-05-26 11:56:08

标签: php binary

在8位10101010的整数编码中,您有0-255种可能性。

共有256种不同的可能性,因为有8个1和0。如果我有10位而不是8位,我会获得多少种不同的可能性?

我如何用PHP计算?

4 个答案:

答案 0 :(得分:13)

我假设您正在考虑二进制而不是十六进制?二进制是基数2(因此为0或1),其中十六进制为16。

假设你在谈论二元:

  • 如果您有8位,则有2 8 的可能性。
  • 如果你有9位,你有2 9 的可能性。
  • 如果你有10位,你有2 10 的可能性。

等等...

因此,您可以使用PHP pow函数:

$possibilities = pow(2, 10);

答案 1 :(得分:2)

尽管我喜欢为此向SQL Server发送查询的想法,OP可以欣赏纯PHP实现。

我建议:

#!/usr/bin/php
<?php
function howmanypossibilities($digits) {
    preg_match_all('{<b>.+= (.+?)</b>}',·
    file_get_contents('http://www.google.com/search?q=2**'.$digits), $matches);
    return str_replace('<font size=-2> </font>', ',', "{$matches[1][0]}\n");
}

print howmanypossibilities(10);
?>

答案 2 :(得分:1)

这将是2 ^ 10(2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2)

在SQL Server中

SELECT 2*2*2*2*2*2*2*2*2*2

SELECT POWER(2,10)

答案 3 :(得分:0)

对于8位,对于无符号数(<256个可能的值,包括0),范围为[0 - 255]。

对于一般情况,您有2^x个可能的值,其中x是位数。因此,对于10位,您有2^10 = 1024个可能的值。

要在PHP中计算,只需使用pow函数:

pow ( number $base , number $exp )

e.g。

echo pow(2, 10)将输出1024。