Aktueller Standort: Startseite> Neueste Artikel> So berechnen Sie die Anzahl der festgelegten Bits in Ganzzahlen mit PHP

So berechnen Sie die Anzahl der festgelegten Bits in Ganzzahlen mit PHP

M66 2025-06-20

Was ist Binärcode?

Binärcode ist ein System, das ein Binärnummernsystem verwendet, um Informationen oder Daten darzustellen. Es werden nur zwei Zahlen verwendet, normalerweise 0 und 1, um alle Werte darzustellen. Jede Zahl im Binärcode wird als Bit bezeichnet (die Abkürzung der Binärzahl).

Im Binärcode stellt jede Zahl eine Leistung von 2 dar. Beginnend mit der rechtlichen Zahl wird die Leistung von 2 von rechts nach links erhöht. Zum Beispiel repräsentiert das nächste Bit in einem 8-Bit-Binärcode 2 0 (1) 2 1 (2) und so weiter.

Beispiel für die Binärzahl

Konvertieren wir die Dezimalzahl 42 in Binärcode. Um 42 in Binär umzuwandeln, teilen wir ihn kontinuierlich um 2 und verfolgen den Rest, bis der Quotient Null wird.

Hier ist ein Schritt-für-Schritt-Prozess:

Schritt 1 : 42 ÷ 2 = 21, der Rest ist 0

Schritt 2 : 21 ÷ 2 = 10, der Rest ist 1

Schritt 3 : 10 ÷ 2 = 5, der Rest ist 0

Schritt 4 : 5 ÷ 2 = 2, der Rest ist 1

Schritt 5 : 2 ÷ 2 = 1, der Rest ist 0

Schritt 6 : 1 ÷ 2 = 0, der Rest ist 1

Um die binäre Darstellung zu erhalten, beginnen wir unten (der letzte Rest) und lesen den Rest von unten auf. Der Binärcode für 42 ist: 101010 , so dass die Dezimalzahl 42 im Binärcode als 101010 dargestellt wird.

Was ist der Setbit?

Im Zusammenhang mit Binärcode beziehen sich das Einstellen von Bits auf Binärnummern (Bits), die auf 1. Andererseits eingestellt, das klare Bit bezieht sich auf eine binäre Nummer (Bit) auf 0.

Bitbeispiel einstellen

Beispielsweise gibt es im Binärcode 101010 drei Sätze (die entsprechende Position von 1) und drei klare Bits (die entsprechende Position von 0).

PHP -Programm: Berechnen Sie die Anzahl der festgelegten Bits in Ganzzahlen

Methode 1: Schaufeln Sie alle Bits in Ganzzahlen durch

Hier ist ein PHP -Code -Beispiel, das die Anzahl der festgelegten Bits mithilfe einer Schleifenquellenmethode berechnet:

<?php
// Function to get no of set bits in binary representation of positive integer n
function countSetBits($n)
{
    $count = 0;
    while ($n) {
        $count += $n & 1;
        $n > > = 1;
    }
    Return $ count;
}

// Treibercode
$ nummer = 12;
echo "Anzahl der SetBits in $ nummer:". countSetBits ($ number);
?>

Ausgabe

Anzahl der SetBits in 12: 2

Methode 2: Rekursive Methode

Hier ist ein PHP -Code -Beispiel, bei dem eine rekursive Methode zur Berechnung der Anzahl der festgelegten Bits verwendet wird:

<?php
// PHP implementation of recursive approach to find the number of set bits
function countSetBits($n)
{
    // base case
    if ($n == 0)
        return 0;
    else
        // if last bit set, add 1 else add 0
        return ($n & 1) + countSetBits($n > > 1);
}

// Treibercode
$ n = 123;
Echo "Anzahl der Setbits in $ n sind:". CountSetBits ($ n);
?>

Ausgabe

Anzahl der SetBits in 123: 6

Zusammenfassen

Zusammenfassend können wir rekursive Methoden verwenden und alle Bits durchführen, um die Anzahl der festgelegten Bits (1) in einer Ganzzahl zu berechnen. Die Schleifenmethode beinhaltet die Iteration über jedes Bit einer Ganzzahl mit einer Weile -Schleife. Wir initialisieren eine Zählervariable und iterieren, bis die Zahl zu 0 ist. In der Schleife verwenden wir den bitweisen und Operator mit 1, um das bitweise und den Betrieb durchzuführen, um das am wenigsten signifikante Bit zu überprüfen. Wenn es gleich 1 ist, erhöhen wir den Zähler. Dann bewegen wir die Nummer um 1 Ziffer nach rechts. Dieser Vorgang wird fortgesetzt, bis alle Bits überprüft werden und die endgültige Zählung zurückgegeben wird.

Bei rekursiven Methoden können wir eine rekursive Funktion definieren, die eine Ganzzahl als Eingabe nimmt. Innerhalb der Funktion verwenden wir bitweise mit Operatoren und 1, um das am wenigsten signifikante Bit zu überprüfen. Wenn es gleich 1 ist, erhöhen wir einen Zähler. Anschließend verschieben wir die Nummer nach 1 Bit und rufen die Funktion mithilfe der aktualisierten Nummer rekursiv auf. Der Grundfall ist, dass wir, wenn die Zahl 0 wird, den Wert des Zählers zurückgeben. Diese Methode berechnet die festgelegten Bits rekursiv, bis die Zahl 0 wird.

Beide Methoden bieten eine Möglichkeit zur Berechnung von Set -Bits in Ganzzahlen, und Programmierer können unterschiedliche Implementierungen basierend auf ihren Anforderungen und Vorlieben auswählen.