Odwrotna kolejność bajtów w stringach binarnych

Założenie: Nauczymy się odwracać kolejność bajtów w stringu binarnym w PHP, wykorzystując funkcję hexdec().

Krok po kroku:

  1. Konwersja stringa heksadecymalnego na liczbę dziesiętną:
    
    $hexString = "1A2B3C";
    $decimal = hexdec($hexString);
    					

    Funkcja hexdec() konwertuje string heksadecymalny na jego dziesiętną reprezentację.

  2. Odwrócenie bajtów (metoda bitowa):
    
    $reversedDecimal = 0;
    for ($i = 0; $i < strlen($hexString); $i += 2) {
      $reversedDecimal = ($reversedDecimal << 8) | hexdec(substr($hexString, $i, 2));
    }
    					

    Pętla iteruje po stringu heksadecymalnym, po dwa znaki (jeden bajt) na raz. Operatory bitowe << (przesunięcie bitowe w lewo) i | (alternatywa bitowa) odwracają kolejność bajtów.

  3. Konwersja liczby dziesiętnej z powrotem na string heksadecymalny:
    
    $reversedHexString = dechex($reversedDecimal);
    					

    Funkcja dechex() konwertuje liczbę dziesiętną na jej reprezentację heksadecymalną.

  4. Wyświetlenie wyniku:
    
    echo "Oryginalny string: " . $hexString . "\n";
    echo "String z odwróconą kolejnością bajtów: " . $reversedHexString;
    					

    Wyświetlamy zarówno oryginalny, jak i zmodyfikowany string.

Ten przykład pokazuje podstawowe techniki pracy z stringami binarnymi w PHP. Zachęcamy do dalszego zgłębiania tematu i eksperymentowania z różnymi metodami odwracania bajtów!

Dodaj komentarz 0

Your email address will not be published. Required fields are marked *