Jak obliczyć odległość Hamminga

Posted on
Autor: Monica Porter
Data Utworzenia: 22 Marsz 2021
Data Aktualizacji: 3 Lipiec 2024
Anonim
Hamming Code/Distance Error Detection
Wideo: Hamming Code/Distance Error Detection

Zawartość

Obecnie prawie każdy aspekt współczesnego życia wiąże się z transferem informacji cyfrowych między poszczególnymi osobami lub między poszczególnymi serwerami lub systemami. Podczas zarządzania kontami bankowymi online, aktualizowania stron mediów społecznościowych, a nawet odtwarzania płyty DVD z odtwarzaczem DVD podłączonym do telewizora, informacje są przenoszone cyfrowo z jednego miejsca do drugiego, przewodem lub sygnałem bezprzewodowym. Aby informacje te mogły być przekazywane z jednej lokalizacji do drugiej, należy je przesłać za pomocą kodu komputerowego. W tym „języku” informacje przemieszczają się za pomocą kombinacji 1 i 0, znanych jako kod binarny. Błąd w kodzie binarnym przenoszonym z jednego systemu do drugiego może oznaczać, że informacje nie są poprawnie przekazywane, co może powodować wiele problemów dla użytkownika komputera. Odległość Hamminga jest sposobem na zrozumienie różnic między kodami. Można to następnie wykorzystać do skorygowania błędów.

TL; DR (Too Long; Didnt Read)

Odległość Hamminga odnosi się do liczby punktów, w których różnią się dwie linie kodu binarnego, wyznaczana przez zsumowanie liczby miejsc, w których różnią się dwie linie kodu. Na przykład odległość między dwoma słowami kodowymi 10101010 i 01011010 wynosi cztery: chociaż może to nie znaczyć wiele bez con, może to oznaczać, że w czterech punktach błędy w kodzie spowodowały, że plik audio nie odtwarzał się poprawnie, a obraz na niepoprawne wyświetlanie telewizji lub błędna interpretacja krytycznej funkcji komputera.

Co to jest odległość Hamminga?

Odległość Hamminga dwóch podanych linii kodu jest liczbą punktów, w których wartości kodu binarnego linii są różne (przy założeniu, że dwie linie kodu mają tę samą długość). Może to być nieco mylące, aby zrozumieć przy pierwszym przejściu, więc rozważ ten prosty przykład: Jedno słowo jest wysyłane z telefonu A na telefon B. Po przetłumaczeniu na kod binarny wiersz kodu reprezentujący telefon A brzmi „101” a na telefonie B wiersz kodu brzmi „010”. Porównując te linie, widać, że w każdym z trzech miejsc znajdują się różne symbole. Może to oznaczać, że nie został poprawnie wysłany.

Jak obliczyć odległość Hamminga

W prostych scenariuszach obliczanie odległości Hamminga jest łatwe, choć należy pamiętać, że odległość Hamminga można obliczyć tylko dla linii o tej samej długości. Po prostu dodajesz liczbę miejsc, w których linie mają różne wartości. W powyższym przykładzie odległość Hamminga wynosiłaby trzy, ponieważ linie mają różne wartości w trzech punktach. Jednak dokonanie tego porównania staje się bardziej czasochłonne, im dłuższa jest linia kodu binarnego. Rozważ nieco dłuższy przykład z dwoma wierszami kodu: 100110 i 110011. Oba wiersze kodu zawierają sześć punktów informacyjnych. Wartości są różne w trzech z tych punktów, więc odległość Hamminga między tymi dwiema liniami wynosi również trzy. Obliczanie odległości Hamminga przy użyciu większego zestawu danych staje się bardziej skomplikowane i wymaga użycia skomplikowanych równań i funkcji, takich jak d = min {d (x, y): x, y∈C, x ≠ y}.

Dlaczego odległość Hamminga jest przydatna?

Wbrew pozorom odległość Hamminga może wydawać się dowolna. Jest to jednak ważny pomiar dla programistów. Odległość Hamminga może pomóc programistom w pisaniu kodu, który wykrywa błędy, a nawet samodzielnie je koryguje. Może również pomóc ludziom zrozumieć, jak podatny jest kod na błędy. Odległość Hamminga nosi imię Richarda Wesleya Hamminga, który opracował pomiar pod koniec lat 40. XX wieku, kiedy pracował w Bell Telephone Laboratories. Chociaż Hamming nie docenił świętowania innowacji, branża technologiczna zwróciła na to uwagę i wykorzystała ją z wielkim skutkiem podczas rozwiązywania problemów z kodem. Prawie 50 lat po odkryciu pomiaru przez Hamminga, otrzymał w 1996 roku nagrodę Eduarda Rheima za osiągnięcia w dziedzinie technologii przyznaną przez niemiecką fundację Eduard Rheim Foundation. Ponadto IEEE, duża profesjonalna organizacja z branży technologicznej, rozdaje dorocznego Richarda W. Hamming Medal na jego cześć.