Hvad er blokkodning?
En del af kodeteorien, blokering er en form for fremadrettelseskorrektion (FEC), også kendt som en kanalkode, der konverterer meddelelser til specifikke koder og sender informationen som en blok af data med en forudbestemt længde. Større datablokke gør det lettere for den modtagende computer at afkode informationen og rette fejl, der opstår under overførslen. Blokoder og konvolutionalkoder er to kodetyper, der ofte bruges i FEC. Disse typer koder tillader, at en meddelelse sendes via en upålidelig forbindelse og stadig kan dechificeres, når den ankommer.
Brug af blokkodning er nødvendig på grund af støj, der opstår, når der sendes en meddelelse. Når data skal køre en lang afstand eller over en upålidelig forbindelse, bruges Hamming-vægten og -afstanden til at bestemme sandsynligheden for fejl. Hamming-vægt er det antal cifre, der er nødvendigt for at udtrykke alle mulige kodekombinationer, og hammingsafstanden er, hvor mange fejl der skulle opstå, før en bit repræsenterede et legitimt, men forkert informationsstykke.
For eksempel, hvis en afsender, der bruger blokkodning, ville sende en meddelelse, der kun kunne bruge tre mulige koder, der hver var tre cifre lange, ville Hamming-vægten være tre. Koderne kan være 000, 010 og 011. Hvis en fejl resulterede i, at ét cifret ændrede sig, såsom 000 ændrede sig til 010, ville koden læse som en legitim kode (010), men ikke den kode, som afsenderen havde til hensigt (000) . Hamming-afstanden for denne kode er således en, fordi kun et ciffer skal ændres for at forårsage en fejl, som computeren ikke kan løse.
For at sænke Hamming-afstanden og reducere fejl, sendes data som en kodeblok, der kodes til specifikke kodeord med en bestemt længde. De originale meddelelsesdatabits kaldes k-bit. K-bitene oversættes til tilsvarende n-bit, som er koder, der er valgt til at stå i som længere koder for hver k bit. Der tilføjes ener eller nuller for at gøre bitene ensartede og reducere Hamming-afstanden. Derefter overføres disse blokke af n bit til den modtagende computer.
At tænke på blokering er enklest, når man sammenligner det med to personer, der har en samtale. Når man taler i et støjende rum eller råber over en lang afstand, er der mere plads til fejl i det, den modtagende person hører. Hvis sætningen er lang, kan personen rette flere fejl ved at tage hele sætningen i sammenhæng, men korte sætninger har en højere fejlrate, fordi det er sværere at dechiffrere, hvad personen siger.
Som et eksempel, hvis den ene person råber, "rød kat", og den anden person hører "Fed kat", afbryder de straffen forkert. Hvis den første person dog sagde: "Jeg har en rødfarvet kat", og den anden person hørte "jeg har en fodret farvet kat," sætter sammenhænget med sætningen det nemt at bestemme, hvilken person faktisk sagde "rød" og ikke "fodret." Dette er det grundlæggende princip bag blokkodning og brugen af længere, ensartede koder til at hjælpe computere med nøjagtigt at oversætte en blok af information.