НПО Системы Безопасности
(499)340-94-73 График работы:
ПН-ПТ: 10:00-19:00
СБ-ВС: выходной

Главная » Периодика » Безопасность

0 ... 90919293949596 ... 101


пример 6.7. Для системы модулей = 2, /?2 = 3, P?, - iPa - 7 найти значения Og, «з и 04 и с помощью найденных значений а, перевести код в остатках числа {х) = 0240 в десятичную запись.

Для данной системы коду 1000 соответствует число, которое делится без остатка на 3. 5, 7 и является нечетным. Единственным числом такого рода в М является число, равное произведению трех модулей, на которые оно делится без остатка. Таким образом, «1 = 105. Аналогично код 0100 означает число, делящееся без оетатка на 2, 5 и 7 и дающее остаток 1 при делении на 3. Число, равное произведению соответствующих модулей 70, удовлетворяет и тому условию, что при делении на 3 оно дает остаток единицу. В силу единственности кодирования в Ж ag = 70. С помощью подобных же рассуждений получаем, что аз = 126 и а4=120.

Отсюда

(л;),о==0 X 105 + 2 X 70 + 4 X 126 + О X 120 = 644.

Это значение лежит вне множества М. Поэтому его необходимо свести к элементу из Ж путем деления полученного числа на произведение модулей системы. Окончательно (x)io= 14. !

Значения а, для некоторых наиболее часто используемых систем модуля перечислены в нижеследующей таблице.

Т а б л и ц а 6.3

Система

модулей

«1

«в

2, 3

2. 3, 5

2. 3, 5, 7

2, 3, 5, 7, 11

1155

1540

1386

2, 3, 5, 7,-11, 13

15 015

20020

• 6006

25740

16 380

6930

На первый взгляд может- показаться, что второй метод перевода существенно проще первого. Однако у этого метода имеется один недостаток, который зачастую заставляет предпочитать первый метод. Этот недостаток связан с тем, что кроме оборудования, работающего по модулям Pi в этом случае в машине



необходимо иметь оборудование, работающее по модулю р Рг-Pi-... • Рп, что усложняет и удорожает конструкцию машины.

Рассмотрим еще один способ перевода числа из кода в остатках в позиционную систему, определяемую соотношением (6.1), который в ряде случаев оказывается предпочтительнее описанных

• выше методов перевода *. ,

Для удобства записи через щ будем в дальнейшем обозначать цифру, стоящую в коде в остатках числа х в разряде, соответ-

ствующем модулю pi, т.- е. щ = rest -. Возьмем представление х

с помощью (6.1)

♦ X = Ь„ 1- Pi-Pi- .... • Pn i + •- + bi- pi + Ьо

и каждое слагаемое в этом представлении запишем в коде в остатках (слагаемые выписываем в обратном порядке)

Ьо. Ьо.-.. .bo(mod/;,), • • •

О, Ь,- pi (mod/>2). • • • . bipi (modP2), О, О..........b Pipz (mod Рз)

. . О, О, . . . . . . . . ,b„ iPi-P2-- •P„ ,(modp„).

Из этих соотношений вытекает, что

й, = Ьо (mod pi), " • •

. a2 = b„+Pi Pi (той Pi).

«3 = bo + bi pi (mod Ps) + b2Pi- P2 (mod p)

y. «n = be + b,/;,(modp„)-f-...+b„ j./;,-/;2. ... .p j(modp„).

Перепишем полученные соотношения в следующем виде

I bQ = ai (mod pi),

bf Pi (mod P2) = «2 - bo (mod pg), bi- Pi-P2 (mod ps) = «3 - bo - 61 (modp)

b„ r PiPi - • P„ i (mod>„) = a„ - b„ - (modp„) -- • • • - b„ 2-A-• • • • P„ 2 p„).

Общий член в этих соотношениях имеет вид

i-i 1-2 ki

b, ,IIPft(modp,) = «i -Ьо- S hU Pi (той Pi). ft=i ft=i 1=1

* Этот способ предложен М. Н. Андреевым.



Подберем множитель Ц так, чтобы выполнялось сравнение г-а

Li П Рк (mod Pi) = 1 (mod pi).

Тогда

bi . = (ai - bo)Li - biLiPi-...-

- fi-2 iPi- P2......Pj 2 P

или г • "

= («г - bo) Ц - LibkYipi (mod pi). *=i г=1 .

Для каждого коэффициента Li\pi -можно подобрать такой

множитель TVi = 1 (modр/), чтобы выполнялось сравнение к-1

kijl Pi qtk (той Pi), qik<Pi-1=1 -

Тогда общий член соотношений запишется как

bi i = qtoh + qiibi +...+ qi i ц a. . • (б.з)

Соотношения (6.3) являются рекуррентными. Например, для системы модулей 2, 3, 5, 7, Н, 13} эти соотношения имеют вид

Ьо-= й1 (mod-2), • Ь, = Ьо + 2й2 (mod 3),

b2 = 4bo + 3bi +«3(m6d5). . . •

- b3 = 3bo + 6bi + 4&2 + 4«4(mod7), bi = lObo + Щ + 5&2 + ЗЬз + «5 (mod 11), 655= lObo + 7&, + 8.&2 + 63 + Ibi + Зйб (mod 13).

Заметим, что перевод числа из кода в остатках в какую-либо позиционную систему решает проблему сравнения двух чисел. Если оба числа находятся в одном множестве М или М", то при попарном сравнении цифр bi или десятичных цифр, начиная со старшего разряда, можно получить ответ на вопрос: какое число больше. Отметим, что при использовании для сравнения представления чисел в виде (6.1) для сравнения двух и-разрядных чисел вкоде в остатках*тре-буется 4и + 2 такта работы машины.

- Второй проблемой, связанной с представлением чисел в коде в остатках, является проблема определения знака числа, по его коду в остатках.



0 ... 90919293949596 ... 101