Vad är blockkodning?
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 enklare för den mottagande datorn att avkoda informationen och korrigera fel som inträffar under överföringen. Blockkoder och konvolutionella koder är två kodtyper som vanligtvis används i FEC. Dessa typer av kod tillåter ett meddelande att skickas över en opålitlig anslutning och fortfarande kan dechifferbar när den anländer.
Användningen av blockkodning är nödvändig på grund av brus som uppstår när ett meddelande skickas. När data behöver resa långt eller över en opålitlig anslutning används hammvikt och avstånd för att bestämma sannolikheten för fel. Hammingvikt är antalet siffror som behövs för att uttrycka alla möjliga kodkombinationer, och Hamming -avståndet är hur många fel som skulle behöva inträffa innan lite representerade en legiTidat, men fel, information.
Till exempel, om en avsändare som använder blockkodning ville skicka ett meddelande som endast kunde använda tre möjliga koder som var vardera tre siffror långa, skulle Hamming -vikten vara tre. Koderna kan vara 000, 010 och 011. Om ett fel resulterade i att någon siffra ändras, såsom 000 ändras 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 den här koden ett eftersom bara en siffra behöver ändras för att orsaka ett fel som 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 av en viss längd. De ursprungliga meddelandedatabitarna kallas K -bitar. K -bitarna översätts till motsvarande N -bitar, som är koder som har valts ut för att stå i som längre koder för varje K -bit.De eller nollorna läggs till för att göra bitarna till en enhetlig längd och minska hammningsavståndet. Sedan överförs dessa block av N -bitar till den mottagande datorn.
Att tänka på blockkodning är enklast när man jämför den med två personer som har en konversation. När du pratar i ett bullrigt rum eller ropar över en lång 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 en högre felfrekvens eftersom det är svårare att dechiffrera vad personen säger.
Som ett exempel, om en person ropar, "Red Cat" och den andra personen hör, "Fed Cat," avbryter de felaktigt. Om den första personen emellertid sa: "Jag har en röd färgad katt" och den andra personen hörde "Jag har en matad färgad katt", gör meningen med meningen det enkelt att bestämma personen faktiskt sa "rött" och inte "matas." Detta är den grundläggande principen bakom Block -kodning och användning av längre, enhetliga koder för att hjälpa datorer exakt översätta ett informationsblock.