Проверете кода

Composition

Anycodewithacheckcodeiscomposedoftwoparts:thebodycodeandthecheckcode(suchastheorganizationcode).Thebodycodeisthenumberthatrepresentsthecodeobject.Theverificationcodeisanumberattachedtothebodycodetoverifytheaccuracyofthebodycodeduringtheinputprocess.Eachbodycodecanonlyhaveonecheckcode,andthecheckcodeisobtainedthroughaprescribedmathematicalrelationship.

Principleofverification

Thesystemispresetwithaverificationprogramcompiledaccordingtotheverificationformuladerivedfromtheverificationmethod.Whenthecodewiththeverificationcodeisinputintothesystem,Thesystemusestheverificationprogramtocalculatetheinputbodycodetoobtaintheverificationresult,andthencomparestheverificationresultwiththeverificationcodeoftheinputcodetocheckwhethertheinputiscorrectornot.Ifthetwoareconsistent,itmeansthatthecodeisenteredcorrectlyandthesystemallowsentry;iftheyareinconsistent,itmeansthatthecodeisenteredincorrectly,andthesystemrefusestoenterandrequiresthecodetobere-entered.

Малгоритъм за контролна сума

Различните алгоритми за контролна сума често са различни. Общите алгоритми за код за проверка включват: кодово разстояние, проверка на четност, проверка на Хеминг, проверка на циклична излишност и др.

Пример за алгоритъм

Код за проверка на лична карта

Съгласно националния стандарт GB11643-1999 на Китайската народна република, методът за изчисление за кода за потвърждение на гражданския номер на самоличността на Китайската народна република е ISO7064:1983.MOD11-2 метод за изчисляване на код за проверка

Приемаме 17-цифрено число

17-цифрено число

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

Коефициент на тежест

7

9

10

5

8

4

2

1

6

3

7

9

10

5

8

4

2

368

Изчислете сумата от произведението на 17-цифреното число и съответния коефициент на тежест S: 1×7+2×9+3×10+4×5+5×8+6×4+7×2+8×1+9×6+0×3+1×7 +2×9+3×10+4×5+5×8+6×4+7×2=368;Изчислете остатъкаTofS÷11:368mod11=5;Изчислете остатъкаRof(12-T)÷11,ако R=10,кода за проверка е буква" X"; ако R≠10, кодът за проверка е числото "R": (12-5) mod11=7. 17-цифреният код за проверка е7, който е обобщен в 123456789012345677.

Формулата на коефициента на тежест е Wi=2^(n-1)(mod11), където е числовата последователност, започваща от 1 отдясно наляво.

Последователност

ai12345678901234567?

Wi79105842163791058421

Код за проверка на организацията

Кодът за национална организация се състои от осем цифри (или главни латински букви) основен код и една цифра (или главни латински букви) код за проверка. Кодът за проверка се изчислява съгласно следната формула:

<таблица>

8

C9=11-MOD(∑Ci×Wi,11)

i=1

MOD-представяне на останалата функция;i-представяне на номера на позицията на символа на кода отляво надясно;

Ci-представляващ стойността на кодовия знак в тази позиция, изброена в следните символи на "набор от кодови знаци";

C9-указващ код за проверка;

Wi-указващ коефициента на тежест на позицията, областите на стойностите са както следва:

коефициент на тежест

p>

i

1

2

3

4

5

6

7

8

Wi

3

7

9

10

5

8

4

2

Когато стойността на функцията MODWhenitis1(ieC9=10),кодът за проверка трябва да бъде представен от главната латинска буква“X”;когато стойността нафункциятаMODе 0(ieC9=11),кодът за проверка все още е представен от“0”;когато стойността наC9Whenitis е 1 до 9,кодът за проверка е пряко представен от стойността наC9.

Вижте

  • Система за кодове за проверка

  • Проверка за излишък

Related Articles
TOP