Stavo giocando con operazioni bit a bit e una domanda sul conteggio dei bit veri di qualsiasi valore intero positivo, quindi ho risolto il problema con lo spostamento dei bit, quindi ho pensato solo se ci sarebbe stato un modo per ottenere i bit spostati o non spostati dal bit a bit operazione, il codice sarebbe più ottimizzato. Così ho controllato la documentazione di PHP e ho imparato le operazioni bit a bit direttamente tradotte nel codice C. Ho controllato C e non ho visto nessuna sezione correlata. Quindi hai qualche idea al riguardo? È possibile ottenere questi bit? O semplicemente buttato via?
Il codice che sto cercando di ottimizzare:
function num1Bits($number)
{
if ($number <= 0) {
return 0;
}
$countOf1 = 0;
do {
if ($number & 1) {
++$countOf1;
}
} while ($number = $number >> 1);
return $countOf1;
}
echo num1Bits(11);
Qualsiasi informazione sarebbe apprezzata.