Innehåll
- TL; DR (för lång; läste inte)
- Vad är Hamming avstånd?
- Hur man beräknar Hamming Distance
- Varför är Hamming avstånd användbart?
Idag innebär nästan alla aspekter av det moderna livet överföring av digital information, antingen mellan enskilda personer eller mellan enskilda servrar eller system. När du hanterar dina bankkonton online, uppdaterar dina sociala mediesidor eller till och med spela en DVD med en DVD-spelare ansluten till din tv, information flyttas från en plats till en annan digitalt, antingen via en sladd eller via en trådlös signal. För att denna information ska kunna överföras från en plats till en annan måste den överföras via datorkod. I detta "språk" rör information sig via en kombination av 1s och 0s, känd som binär kod. Ett fel i den binära koden som flyttas från ett system till ett annat kan innebära att information inte överförs ordentligt, vilket kan orsaka många problem för datoranvändaren. Hammingavstånd är ett sätt att förstå hur koder skiljer sig åt. Detta kan sedan användas för att korrigera fel.
TL; DR (för lång; läste inte)
Hammingavstånd avser antalet punkter där två rader med binär kod skiljer sig, bestäms genom att helt enkelt lägga till antalet fläckar där två rader med kod skiljer sig åt. Till exempel är avståndet mellan de två kodorden 10101010 och 01011010 fyra: även om detta kanske inte betyder mycket utan con, kan detta betyda att fyra punkter har fel i kod resulterat i att en ljudfil inte lyckats spela korrekt, det visuella på en tv som visar felaktigt, eller en kritisk datorfunktion som tolkas fel.
Vad är Hamming avstånd?
Hammingavståndet för två givna kodrader är antalet punkter där linjernas binära kodvärden är olika (förutsatt att de två kodraderna har samma längd). Det här kan vara lite förvirrande att förstå vid första passet, så tänk på detta enkla exempel: Ett ord skickas från telefon A till telefon B. När det översätts till binär kod läses kodraden som representerar telefonen A "101" och på telefon B står kodraden "010." Jämför dessa rader kan du se att det finns olika symboler på var och en av de tre fläckarna. Detta kan vara ett tecken på att det inte skickades korrekt.
Hur man beräknar Hamming Distance
I enkla scenarier är det enkelt att beräkna Hamming-avstånd, men det är viktigt att komma ihåg att Hamming-avstånd bara kan beräknas för rader som har samma längd. Du lägger bara till antalet platser där raderna har olika värden. I exemplet ovan skulle Hamming-avståndet vara tre, eftersom linjerna har olika värden på tre fläckar. Att göra denna jämförelse blir mer tidskrävande ju längre linjen med binär kod är dock. Tänk på något längre exempel med två kodrader: 100110 och 110011. Dessa kodrader innehåller båda sex informationspunkter. Värdena är olika i tre av dessa punkter, så Hammingavståndet mellan dessa två rader är också tre. Beräkning av Hamming-avstånd med en större uppsättning data blir mer komplicerat och innebär att man använder intrikata ekvationer och funktioner som d = min {d (x, y): x, y∈C, x ≠ y}.
Varför är Hamming avstånd användbart?
Utan hinder kan Hamming avstånd verka godtyckligt. Men det är en viktig mätning för kodare. Hammingavstånd kan hjälpa kodare att skriva kod som upptäcker fel och till och med korrigerar dessa fel på egen hand. Det kan också hjälpa människor att förstå hur felaktig en kod är. Hammingavståndet är uppkallat efter Richard Wesley Hamming, som utvecklade mätningen i slutet av 1940-talet när han arbetade på Bell Phone Laboratories. Även om Hamming bagatelliserade firandet av innovationen tog teknikindustrin uppmärksamhet och använde den till stor effekt vid felsökning av kod. Nästan 50 år efter att Hamming upptäckte mätningen fick han Eduard Rheim Award for Achievement in Technology av Eduard Rheim Foundation i Tyskland 1996. Dessutom ger IEEE, en stor professionell organisation inom teknologisektorn, den årliga Richard W. Hamming medalj till hans ära.