Kökeni ve daha geniş kullanımı
Reed–Solomon kodlarını 1960'ta Irving S. Reed ve Gustave Solomon tanımladı. Tek bitler yerine tüm simgeler, genellikle baytlar üzerinde çalışırlar; bu da çizik veya leke gibi ani hasar patlamalarıyla başa çıkmada iyi olmalarını sağlar.
Aynı kod ailesi CD, DVD ve Blu-ray disklerdeki verileri, bazı dijital televizyon ve uydu bağlantılarını ve Data Matrix ECC 200, Aztec kod ve PDF417 dahil diğer 2D barkodları korur.
QR kodlar bunu nasıl kullanır
QR kod her 8 bitlik kod sözcüğünü, x^8 + x^4 + x^3 + x^2 + 1 (onaltılık 0x11D) ilkel polinomuyla kurulan GF(256) sonlu cisminin bir öğesi sayar. Veri kod sözcükleri bir üreteç polinomuna bölünür ve kalan, onlara eklenen hata düzeltme kod sözcükleri olur.
Büyük kodlar verilerini, her biri kendi hata düzeltme kod sözcüklerine sahip birkaç bloğa böler. Bloklar, kod sözcükleri ızgaraya yerleştirilirken iç içe geçirilir; böylece tek bir hasar lekesi, tek bir bloğu ezmek yerine birçok bloğa yayılır.
Ne kadarını düzeltebilir
Bir blokta n hata düzeltme kod sözcüğü varsa çözücü, konumu bilinmeyen n/2 kod sözcüğüne kadarını veya konumu bilinen, silinme (erasure) adı verilen n kod sözcüğüne kadarını düzeltebilir. Karışık durumlarda her hata iki, her silinme bir sayılır kuralı geçerlidir.
Bu yüzden temiz, düz bir alanı logoyla örtülü kod yine taranabilir: akıllı bir okuyucu örtülü bölgeyi silinme olarak ele alabilir; rastgele hasarı düzeltmek ise daha zordur, çünkü çözücünün önce onu bulması gerekir.
- Bilinmeyen hatalar: EC kod sözcüğü sayısının yarısına kadar
- Silinmeler (bilinen konumlar): EC kod sözcüğü sayısına kadar
- Cisim: GF(256), polinom 0x11D
- Ani hasarı yaymak için bloklar iç içe geçirilir