Vad är blockkodning?

En del av kodteorin, blockkodning är en form av framåtfelkorrigering (FEC), även känd som en kanalkod, som konverterar meddelanden till specifika koder och skickar informationen som ett datablock med en förutbestämd längd. Större datablock gör det lättare för den mottagande datorn att avkoda informationen och korrigera fel som uppstår under överföringen. Blockkoder och indragningskoder är två kodtyper som vanligtvis används i FEC. Dessa typer av kod tillåter att ett meddelande skickas över en opålitlig anslutning och kan fortfarande avkodas när det anländer.

Användning av blockkodning är nödvändig på grund av brus som uppstår när ett meddelande skickas. När data måste resa långt eller över en opålitlig anslutning används Hamming-vikten och -avståndet för att bestämma sannolikheten för fel. Hamming vikt är antalet siffror som behövs för att uttrycka alla möjliga kodkombinationer, och avståndet mellan hammaren är hur många fel som skulle behöva inträffa innan en bit representerade en legitim, men fel information.

Till exempel, om en avsändare som använder blockkodning ville skicka ett meddelande som bara kunde använda tre möjliga koder som var vardera tre siffror var Hamming-vikten tre. Koderna kan vara 000, 010 och 011. Om ett fel resulterade i att en siffra ändrades, till exempel 000 som ändrades till 010, skulle koden läsa som en legitim kod (010) men inte den kod som avsändaren avsåg (000) . Således är Hamming-avståndet för denna kod ett eftersom bara en siffra behöver ändras för att orsaka ett fel datorn inte kan fixa.

För att sänka Hamming-avståndet och minska fel, skickas data som ett kodblock som kodas till specifika kodord med en viss längd. De ursprungliga meddelandedatabitarna kallas k-bitar. K-bitarna översätts till motsvarande n-bitar, som är koder som har valts för att stå i som längre koder för varje k-bit. Ringar eller nollor läggs till för att göra bitarna en enhetlig längd och minska Hammingavståndet. Sedan överförs dessa block med n bitar till den mottagande datorn.

Att tänka på blockkodning är enklast när man jämför det med två personer som har en konversation. När man pratar i ett bullrigt rum eller skriker över långt avstånd, finns det mer utrymme för fel i vad den mottagande personen hör. Om meningen är lång, kan personen korrigera fler fel genom att ta hela meningen i sammanhang, men korta meningar har högre felfrekvens eftersom det är svårare att dechiffrera vad personen säger.

Som ett exempel, om en person ropar "Röd katt" och den andra hör "Fed katt" avbryter de meningen felaktigt. Om emellertid den första personen sa: "Jag har en rödfärgad katt" och den andra personen hörde "Jag har en matad färgad katt", gör meningen med meningen i meningen att personen faktiskt sa "röd" och inte "matad." Detta är den grundläggande principen bakom blockkodning och användning av längre, enhetliga koder för att hjälpa datorer att översätta ett block med information på ett exakt sätt.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?