Podrijetlo i šira upotreba
Reed–Solomonove kodove opisali su Irving S. Reed i Gustave Solomon 1960. Djeluju na cijelim simbolima, obično bajtovima, a ne na pojedinačnim bitovima, pa dobro podnose nizove oštećenja poput ogrebotine ili mrlje.
Ista obitelj kodova štiti podatke na CD-ovima, DVD-ovima i Blu-ray diskovima, u nekim digitalnim televizijskim i satelitskim vezama te u drugim 2D crtičnim kodovima, uključujući Data Matrix ECC 200, Aztec kod i PDF417.
Kako ga koriste QR kodovi
QR kod svaku 8-bitnu kodnu riječ tretira kao element konačnog polja GF(256), izgrađenog primitivnim polinomom x^8 + x^4 + x^3 + x^2 + 1 (heksadecimalno 0x11D). Podatkovne kodne riječi dijele se generatorskim polinomom, a ostatak postaje kodne riječi za ispravljanje pogrešaka koje im se dodaju.
Veći kodovi svoje podatke dijele na više blokova, svaki sa svojim kodnim riječima za ispravljanje pogrešaka. Blokovi se zatim isprepliću pri smještanju kodnih riječi u mrežu, tako da se jedna mrlja oštećenja raspodijeli na mnogo blokova umjesto da preplavi jedan.
Koliko može ispraviti
S n kodnih riječi za ispravljanje pogrešaka u bloku dekoder može ispraviti do n/2 kodnih riječi čiji je položaj nepoznat ili do n kodnih riječi čiji je položaj poznat, takozvanih brisanja (erasures). Mješoviti slučajevi slijede pravilo da se svaka pogreška računa dvaput, a svako brisanje jednom.
Zato se kod s čistim, ravnim područjem prekrivenim logotipom i dalje može skenirati: pametan čitač može prekriveno područje tretirati kao brisanja, dok se nasumično oštećenje teže ispravlja jer ga dekoder prvo mora pronaći.
- Nepoznate pogreške: do polovice broja EC kodnih riječi
- Brisanja (poznati položaji): do broja EC kodnih riječi
- Polje: GF(256), polinom 0x11D
- Blokovi se isprepliću radi raspodjele oštećenja u nizu