MSI Plessey
MSI Plessey jest kodem kodującym wyłącznie cyfry. Kod ten jest zmodyfikowaną prze firmę MSI Data Corporation wersją kodu Plessey.MSI Plessey jest kodem kodującym wyłącznie cyfry.
Kod ten jest zmodyfikowaną prze firmę MSI Data Corporation wersją kodu Plessey.Większość typowych zastosowań tego kodu sprowadza się do wykorzystania 12 cyfr i większość czytników kodów kreskowych nie jest w stanie przeczytać kodu, który zawiera więcej niż 16 znaków.Kod ten występuje w czterech wersjach:- MSI Plessey bez korekcji błędów
- MSI Plessey +CHK10 (z pojedynczą korekcją błędów modulo 10)
- MSI Plessey +CHK10 +CHK10 (z podwójną korekcją błędów modulo 10)
- MSI Plessey +CHK11 +CHK10 (z podwójną korekcją błędów modulo 11 i modulo 10)

Typ
MSI Plessey, jednowymiarowy kod kreskowy typu 2W, w którym występują paski o dwóch różnych szerokościach.Kodowane znaki
Cyfry: 0-9.Długość kodu: zmienna.
Budowa
Przy kodowaniu kodów kreskowych przyjmiemy, że '1' będzie reprezentować pasek (ciemny obszar), a '0' będzie reprezentować odstęp (jasny obszar).A zatem liczba 1101 reprezentuje podwójnej szerokości pasek (11), po którym występuje pojedynczej szerokości odstęp (0), a na końcu występuje pojedynczej szerokości pasek (1). Struktura kodu MSI- Znak start
- Dowolna liczba znaków kodu
- Suma kontrolna (1 lub 2 znaki)
- Znak stop
- Znak start: 110
- Cyfra '8': 110100100100
- Cyfra '0': 100100100100
- Cyfra '0': 100100100100
- Cyfra '5': 100110100110
- Cyfra '2': 100100110100
- Suma kontrolna '3': 100100110110
- Znak stop: 1001

Suma kontrolna
MSI używa jednego albo dwóch cyfr kontrolnych. Najbardziej powszechnymi metodami obliczania sumy kontrolnej są:Modulo 10 (MSI Plessey +CHK10)Poniżej przedstawiony jest sposób obliczania sumy kontrolnej wraz z przykładem dla numeru 8052:- Utwórz nowy numer przez wybranie do niego tylko cyfr na parzystych pozycjach. Dla naszego przykładu '8052' nowy numer będzie miał postać '02'.
- Liczbę, którą otrzymałeś w pierwszym kroku, przemnóż przez 2. 02 * 2 = 4
- Dodaj do siebie cyfry z liczby otrzymanej w kroku drugim i dodaj do cyfr na pozycjach nieparzystych. 4 + 8 + 5 = 17 (Jeżeli wynik z kroku 2 byłby np. 123 to byśmy zsumowali: 1+2+3+8+5=19)
- Należy wziąć liczbę otrzymaną w punkcie trzecim i obliczyć resztę z dzielenia przez 10 17 mod 10 = 7
- Cyfrą kontrolną jest wartość, która dodana do wyniku z kroku czwartego da liczbę 10. W naszym przypadku jest to wartość 3, gdyż 3 + 7 = 10.
- Przypisz wagę dla każdej cyfry z kodu, zaczynając z wagą 2 od skrajnie prawej pozycji. Następnie przesuwając się w lewo przypisuj wagi zwiększając wartość o jeden. Jeżeli dojdziesz do wagi o wartości 7, to następny znak będzie miał wagę 2 (wartości wagi są następujące: 2,3,4,5,6,7,2,3,4,5,6,7,2,3...)
- Przemnóż wartość każdego znaku przez przypisaną mu wagę i zsumuj wszystkie iloczyny.
- Oblicz resztę z dzielenia wartości otrzymanej w punkcie drugim przez 11.
- Wartością sumy kontrolnej jest ta liczba, która po dodaniu do wyniku z punktu trzeciego da wartość 11.
W tabeli powyżej przemnożono cyfry przez przypisane im wagi. Wyniki zapisano w ostatnim wierszu. Następnie obliczamy sumę iloczynów: 48 + 0 + 20 + 6 + 6 = 80Obliczamy resztę z dzielenia przez 11:80 mod 11 = 3Liczbą, którą musimy dodać do liczby 3, aby otrzymać 11, jest 8 i jest to właśnie suma kontrolna. Wstawiamy ją na koniec kodu. Kod MSI Plessey +CHK11 dla liczby 80523 ma więc postać '805238'. Modulo 11 / Modulo 10 (MSI Plessey +CHK11 + CHK10) Jest to metoda, która zawiera dwie sumy kontrolne: Modulo 11 i Modulo 10. Dla danego kodu obliczana jest najpierw suma kontrolna Modulo 11 i wstawiana na koniec kodu. Dla nowego kodu (z sumą kontrolną Modulo 11) jest obliczana suma kontrolna Modulo 10, a jej wartość wstawiana jest na koniec kodu.PRZYKŁADY


