在8位整數編碼10101010
中,您有0-255種可能性。二進制文件有多少種可能性?
總共有256種不同的可能性,因爲有8個1和0個。如果我有10位而不是8位,會得到多少種不同的可能性?
我該如何計算在PHP中?
在8位整數編碼10101010
中,您有0-255種可能性。二進制文件有多少種可能性?
總共有256種不同的可能性,因爲有8個1和0個。如果我有10位而不是8位,會得到多少種不同的可能性?
我該如何計算在PHP中?
我假設你在考慮二進制而不是十六進制?二進制是基體2(因此是0或1),其中作爲十六進制是底座16
假設你正在談論二進制:
等...
因此,您可以使用PHP pow功能:
$possibilities = pow(2, 10);
這將是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)
雖然我愛爲此發送查詢到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);
?>
+1:非常棒! :-) – Vicky 2010-05-26 12:41:36
隨着8位,你有範圍[0 - 255]爲無符號數(256個可能的值,包括0)。
對於一般情況,您有2^x
可能值的數量,其中x
是位數。因此,有10位,你有2^10 = 1024
可能的值。
在PHP計算此,簡單地使用pow
功能:
pow (number $base , number $exp)
例如
echo pow(2, 10)
將輸出1024.
你絕對相信我的意思嗎?這給了我1024個位置 – Val 2010-05-26 12:01:55
@Val假設你在談論二進制,然後是的。如果你有10個位(每個位是0或1),你可以存儲0到1023之間的數字(所以總共有1024個不同的可能性) – Yacoby 2010-05-26 12:03:08
是的,換句話說,每當你添加一個二進制位,可以將可能性增加一倍,就像添加一個十進制數字一樣,可以將可能性數量乘以10。 – Martin 2010-05-26 12:06:10