Oprindelse og bredere brug
Reed–Solomon-koder blev beskrevet af Irving S. Reed og Gustave Solomon i 1960. De arbejder med hele symboler, som regel bytes, frem for enkelte bit, hvilket gør dem gode til at håndtere sammenhængende skade som en ridse eller en plet.
Den samme kodefamilie beskytter data på cd'er, dvd'er og Blu-ray-diske, i visse digitale tv- og satellitforbindelser og i andre 2D-stregkoder, herunder Data Matrix ECC 200, Aztec-kode og PDF417.
Sådan bruger QR-koder det
En QR-kode behandler hvert kodeord på 8 bit som et element i det endelige legeme GF(256), opbygget med det primitive polynomium x^8 + x^4 + x^3 + x^2 + 1 (hex 0x11D). Datakodeordene divideres med et generatorpolynomium, og resten bliver de fejlrettelseskodeord, der føjes til dem.
Større koder deler deres data i flere blokke, hver med sine egne fejlrettelseskodeord. Blokkene interleaves derefter, når kodeordene placeres i gitteret, så en enkelt plet skade spredes ud over mange blokke i stedet for at overvælde én.
Hvor meget den kan rette
Med n fejlrettelseskodeord i en blok kan en dekoder rette op til n/2 kodeord, hvis position er ukendt, eller op til n kodeord, hvis position er kendt, såkaldte sletninger. Blandede tilfælde følger reglen om, at hver fejl tæller dobbelt og hver sletning én gang.
Derfor kan en kode med et rent, fladt område dækket af et logo stadig scannes: en snedig læser kan behandle det tildækkede område som sletninger, mens tilfældig skade er sværere at rette, fordi dekoderen først skal finde den.
- Ukendte fejl: op til halvdelen af antallet af EC-kodeord
- Sletninger (kendte positioner): op til antallet af EC-kodeord
- Legeme: GF(256), polynomium 0x11D
- Blokke interleaves for at sprede sammenhængende skade