Способ обнаружения ошибок при передаче и обработке арифметической информации

Иллюстрации

Показать все

Реферат

 

ОПИСАНИЕ

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

Caen Советскиз

Сокиалистичесииз

Республик

Ч Ч

ЧЧ ч г !

Зависимое от авт. свидетельства №

Заявлено 14ЛХ.1965 (№ 1027411/26-24) с присоединением заявки №

Приоритет

Опубликовано 15.XI.1968. Бюллетень № 35

Дата опубликования описания З.IV.1969

Кл. 42m>, 14 г1ПК G 06f

УДК 681.142(088.8) Комитет по делам изобретений и открытий при Совете Министров

СССР

Авторы изобретения

И. Я. Акушский и Д. И. Г. Юдицкий

Заявитель

СПОСОБ ОБНАРУЖЕНИЯ ОШИБОК ПРИ ПЕРЕДАЧЕ

И ОБРАБОТКЕ АРИФМЕТИЧЕСКОЙ ИНФОРМАЦИИ

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

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

Для дальнейшего ускорения обнару>кения ошибки выбирают константы, анализируя по две крайние цифры г-ую и (n — i)-ую на -ом шаге процедуры, причем переходят к анализу (i + 1) и (n — i — 1) цифр, если обе цифры равны нулю, и формируют сигнал ошибки, если результат не равен нулю.

На фиг. 1 представлена система обнаруи ения ошибок при передаче и арифметической обработке информации в цифровых вычислительных машинах, использующая систему остаточных классов с анализом одного разряда; на фиг. 2 — схема, предназначенная для анализа двух разрядов.

Данный способ позволяет контролировать

ЦВМ на основе непозпционных избыточных кодов в системе остаточных классов полностью арифметичных, в которых на равных правах участвуют в операциях основная часть кода и избыточная, пригодные как для контроля передачи числовой информации, так и для контроля результата выполнения арифметических операций.

Рассмотрим систему остаточных классов с взаимно-простыми основаниями ,(P,.(.. (Р„. (1) В этой системе любое число Л из диапазона (О, P), где P = P1P2... Р„, представляется в виде

Л = (ат, а2, ..., ат,, а,), (2) где а,— остаток от деления числа Л на осно30 ванне Р,, 231225

Введем дополнительное основание Р„+>, взаимно-простое с любым Р, из (1) и удовлетворяющее условию

Pn)s)P(((= 1, 2,..., и), и будем представлять числа в этой расширенной системе

А= (а, а»,..., ag, ..., а), an+i). (3)

Это значит, что мы будем представлять числа и производить операции над числами, лежащими в более широком диапазоне (О, P), где

P = Fn+I (4)

Так как считаем рабочим диапазоном, т. е. диапазоном, в котором лежат обрабатываемые числа и результаты операций над ними (О, P), то, очевидно, если на каком-либо этапе обработки оказывается, что числа А ) P, значит произошла какая-либо ошибка при обработке. Будем числа меньше P называть правильными, а больше P — неправильными.

Имеет место следующая теорема, которую мы приведем без доказательства.

Теорема 1

Пусть

А,) — — (а1, а- аС l, Sg, а(-(1, ..., n+)) () (St = 0, 1, 2,, Pr i) означает последовательность Р чисел, у которых цифры по всем основаниям, кроме Р„ одни и те же, а цифры по основанию Р, принимают значения О, 1,..., Pr i. Тогда в каждом из интервалов

r);= (i —, (/+1) — ) (/=0,1... Р i) (6) (р( находится по одному числу этой последовательности, Из этой теоремы вытекает важное следствие.

Следствие. Существует только одно значение S =S, при котором число А„лежит в

P 1 интервале (О, — !.

Р()

Действительно, так как в каждом из интервалов 1 имеется по одному числу последоваj тельности А,(, то одно из них попадает в инP тервал l() — — О, †) . Основную роль, опреде Р,). ляющую свойства введенной системы кодирования, играет вытекающая из предыдущего теорема.

Теорема 2

Пусть P1 P «... Р„< Pn+(и

А = (а1,а, ..., а(,..., а„, en+i)— правильное число.

Тогда число

А = (а1, ар, ..., а 1 фа, ..., я„,..., а)).) является неправильным.

Доказательство

Правильность числа А означает, что

P P P

А (, но так как — ) (равенство поРп-) n+i

P лучается, когда i = и + 1), то подавно A(—, 1

Следовательно, А находится в интервале

О, — ). В соответствии со следствием предыP

»,) дущей теоремы, коль скоро а фа, число А

4

Р1 не может находчться в интервале О, — ), и

P Р во всяком случае А ) —, а тогда А )

P. п+ т. е. А — неправильное число.

Таким образом, данной теоремой устанавливается весьма важный факт для построения обнаруживающей ошибку системы в остаточных классах, а именно: любое искажение цифры по одному какому-либо разряду превращает это число в неправильное и тем самым позволяет обнаружить иска кение. Более того, показано, что существует единственное значение этой цифры, которое может превратить неправильное число в правильное. Легко заметить, что теорема доказана в предположении, что введенное дополнительно основание больше любого из оснований системы, что и определяет правило выбора контрольного основан) (я Рп+(.

Тем же путем можно установить несколько более сильный факт. Пусть среди оснований

Р есть такие малые основ — íèÿ Р(,, Р(,, ..., Fj,, что Р „Р „..., Pj, = Р,(Р +ь. Тогда любые искажения в цифрах по некоторым или даже по всем этим основаниям превращают правильное число в неправильное, и, следовательно, во всех этих случаях искажения могут быть установлены. Действительно, произведение этих оснований P можно рассматривать как одно основание, и поскольку соблюдено условие теоремы Р < P„ I будет верно и ее утверждение. Любое же искажение цифры по сснованию Р,может затронуть цифры по нескольким или данке по всем входящим в Р малым основаниям.

Итак, чтобы обнаружить наличие или отсутствие ошибки в числе А, надо сопоставить его с числом P. Если А P, значит имела место сшибка, по крайней мере, в одной цифре.

Рассмотрим некоторые примеры. Для этого г,римем систему оснований P) — — 2, P> — — 3, J)> — —,5, Р ---= 7. Диапазон правильных представлений составляет P = 2 3 ° 5 ° 7 = 210.

Вводится контрольное основание Р = 11.

Полный диапазон составляет 210 ° 11 = 2310.

Приведем ортогональные базисы системы:

B — — (1, О, О, О, 0) = 1155;B — †(О, 1, О, О, 0) =

= 1540; Вз= (О, О, 1, О, О) =1386; В1=

= (О, О, О, 1, О) = 330; В; = (О, О, О, О, 1) =

= 210.

Пример 1. Вместо правильного числа

А = (1, 2, 2, 3, 6) = 17, получено число А =

=- (1, 2, 2, 5, 6).

Вычислим величину А:

А = 1.1155 + 2.1540 + 2.1386 + 5.330 +

+ 6.210 — r 2310 = 9917 — 4.2310 = 9917—

9240 = 677 ) 2lO.

Поскольку А ) 210, оно неправильно. Тем самым в полученном числе А обнаруживается

231225

5 ошибка. Пропллюстрируем тот факт, что по основанию Рд —— — 7 при фиксированных цифрах по остальным основаниям только цифра 3 дает правильное числа. Действительно, вычисление других взаимных значений дает (1, 2,2,0, 6) =1337)210; 11, 2,2,1,6) — ——

= 16667.> 210; (1. 2, 2. 2, 6) = 1997) 210; (1,2,2,4,6) =-347)210 и (1,2,2,6,6) =

= 1007 ) 210.

Пример 2. Вместо того >ке правильного числа А = (1, 2, 2, 3, 6) = 17 получено число

А = (1, 2, 2, 3, О) — иска>кена цифра по контрольному основанию.

Вычисляем величину А:

Л = 1.1155+2.1540+2,1386+3.330+ 0.210—

r2310 †-7997 †.2310=7997 — 6930= 1067)210.

Таким образом, А ) 210 — обнаруяена ошибка. Этот пример наглядно демонстрирует равноправность контрольного основания со всеми прочими основаниями. Наличие ошибки одинаковым образом устанавливается как при ошибочной цифре по основанию из рабочего диапазона, так и при ошибочной цифре по контрольному основанию.

Пример 3. Вместо того же правильного числа А = (1, 2, 2, 3, 6) = 17 получено число

А = (О, 2, 3, 3, 6). Здесь иска1кенидо подверглись цифры по основаниям 2 и 5. Поскольку

P = 2 ° 5=10 (Р; = 11„эта искажение должно быть обнаружено. Действительно

А = 0.1155+2.1540+3.1386 - 3.330 + 6.210—

r 2310 =9488 — 4.2310 =-9488 — 9240 =-248)210.

Итак, А — неправильное число.

Таким образом, одиночную (в цифре по одному основанию) ошибку всегда можно установить проверкой числа на его вхождение в диапазон (О, Р). Таким же путем в большинстве случаев может быть установлено наличие ошибки и более слои<ного характера, затрагивающей 2, 3 и более оснований.

В ЦВМ в системе остаточных классов ввиду полной независимости работы по каялому основанию наиболее вероятна возмог<ность ошибки именно»о одному основанию. Вероятность одновременной ошибки по двум и более основаниям на несколько порядков меньше вероятности одиночной ошибки. Поэтому изложенный способ обнаруживает наиболее вероятную ошибку, В приведенных примерах неправильность выясняли вычислением значения числа по ортогональным базисам системы, В ЦВМ в системе остаточных классов этот путь неосуществим, так как предполагает вычисления в позиционной системе. Здесь может быть предложен излагаемый далее, легко реализуемый в остаточных классах способ.

Имеется набор констант С,, С2.. С,, представляющих собой числа следующего вида:

C1" = (41, t21, ° и- И) t11 — — 1,2,, P1 — 1

С2: (О ф д22, 321 y ° ° ° р ди-;-12) 122 = 1>2,..., Р2 — 1

6

C3" = (О, О, зз ° °, +дз) гзз = 1 2

C,I " "= (0,0,0,,0,/дд,..., 4+и) 111 =1,2 ",P ã — 1

С „"" =(0,0,0,...0, t, ..) ..=1,2,.,P„— 1

Общее количество констант составляет P, +

+ Рз+, ..., Є— и = М. Процесс проверки на правильность числа А протекает в следующие и шагов (этот процесс мы назовем нулевизацией).

1. Вычисляется разность А,=А — С1 (0,5 „

S ;,..., S„, S„,1) — обращается в нуль цифра первого разряда (С1 — константа из набора

Сд", у которой 41 — — ад).

s3

2. Вычисляется разность А = Ад — С * =

= (О, О, аз 4 аи S„;1) — обращает\ ся в нуль цифра второго разряда (С вЂ” константа из набора С2", у которой t22 = S 2ï. и и — 1

Вычисляется разность А„= A„„1 — С " (0,0, и

О, ..., О, S„"+1) — обращается в нуль цифра и-1 и-го разряда. (Сзи — константа из набора и

Сии, у которой /„, = S"„ ) . и

Если S„"+1 = О, то число А неправильное.

Примечание. Если на каком-либо /-ом шаге получился результат, у которого, помимо полагающихся 1 нулей слева, содержится нуль и на j+ 1-ам разряде, то j+ 1-й шаг пропускается, и производится j + 2-й шаг.

Проиллюстрируем способ нулевиза»п» плимером. Система оснований та же, что в прелыдущих примерах. Па»ведем набор;<онстант:

1+ 2+ 4+6 = 13 констант

Сд= (1, 1, 1, 1, 1)

С2 = (0, 1, 4, 4, 4); С2 =- (О, 2, 2, 2, 2)

Сз =-(0,0,1,6,6);Сз =(0, О, 2,5, 1):Сз=

= (0,0,3,4,7);Сз =- (0.0,4,3,2)

С4= (0,0,0,1,101;C4 — (О, 0,0,2, 8);С4: (О, О, О, 3, 7); С4 = (0, О, О, 4, 5)

С4= (0,0,0,5,4);С4 = (0,0.0,6,2).

Пример 4. Проверить на правильность число А = (1, 2, 2, 3, 6).

1-й шаг А — — А — Сд= (1, 2, 2, 3, 6) — (1, 1, l, 1, 1) =(0, 1, 1, 2, 5)

2-й шаг Аз = — Ад — С2= (О, 1, 1, 2, 5) — (О, 1, 4, 4, 4) =(О, О, 2, 5, 1)

3-й шаг Аз = — Л,— Сз= (О, О, 2, 5, 1) — (О, О, 2, 5, 1) =(О, О, О. О, 0)

Согласно примечанию 4-й шаг пропускается.

Получено Яз= О. Числа А = (1, 2, 2, 3, 6)— правильное.

Пример 5. Проверить на правильность число А = (), 2, 2, 3, О).

1-йшагЛд-— — А — Сд= (1,2,2,3,0) — (1,1,1, 1, 1) — (0, 1, 1, 2, 10)

2-й шаг А2 —— — Ад — С2 = (О, 1, 1, 2, 10) — (О, 1, 4, 4, 4) =(О, О, 2, 5, 6) 231225

Л вЂ” -и шаг.

0, Sn4 l

Обращение в нуль цифр по основаниям Рп

2 из набора

Гп п 1и п — — — — -+- 1

С и п41

2 2 и — — 1

Ifl

2 2 у которой и

=5>

2 2

30 ае

2

1, 1, О, 4, О, 3, 2, 1, 2, О, 1, 3, 1

О (О, О, О, О, 0) (О, 1, О, О, 4) (О, 2, О, О, 7) 7

3-й шаг Аг == Аг — Сз = (О, О, 2, 5, 6) — (О, О, 2, 5, 1) =(О, О, О, О, 5)

4-й шаг пропускается. Получено 51 — — 5 0.

Число А = (), 2, 2, 3, О) — неправильное. При 5 его получении имела место ошибка.

Как видно, способ нулевизации требует и шагов (и — количество оснований рабочего диапазона). Число шагов можно уменьшить вдвое, ведя нулевизацию по двум разрядам в 10 один шаг. Это требует большого запаса констант. Установлено, что наименьшее число констант при парной нулевизации будет, если объединять в нулевизируемые пары разряры

Р, и Рп, Р, и Р„ I и т. д. Набор констант в 15 этом слУчае состзит из Р,Ри+ Р2Р„1+...+P

2 констант, являющихся наименьшими возможными числами следующего вида:

t»tin 20

Cl n — (I I > 8>2 > ° ° ° > >1п> > 1и+ 1)> 11=0, 1, 2,, Р,— 1; (In — О, 1, 2, ", Рп — 1;

> - = >2» — 1

С2и — 1 — (О> >иа> Igg> ° ° > l2n — 1> 0 > >ги4 1)>

/„=О, 1, 2,..., P,— 1;

4и 1 — 0,1,2,,,Р,1 — 1;

tn и >и п

> -, l,0,0,..., t

2 2 2

=0,1, ...,Є— 1;

2 2 2

=О, 1, ...,Є— 1.

2 2 2

Процесс нулевизации числа А в этом случ состоит из следующих — шагов:

1-й шаг. Вычисляется разность А1п = А

С1п — (0> 52> 5» ° ., > 5и 1> 0> 5и+ 1) °

Обращение в нуль цифр по основаниям Р, О (О, О, О, О, О) (1, 1 (О, 2, 3, 1, 8) (1, 2 (О, 2, 2, 2, 2) (1, 3 (О, 1, О, 3, 10) (1, 4 (О, 1, 4, 4, 4) (1, 5 (О, О, 2, 5, 1) (1, 6 (О, О, 1, 6, 6) (1, и

1 (О, О, 1, О, 5) (О, 1, 1, 2 (О, О, 2, О, 9) (О, 1, 2, 3 (О, О, 3, О, 3) (О, 1, 3, 4 (О, О, 4, О, 7) (О, 1, 4, Пример 6. Провсрпть правильность числа А = (1, 2, 2, 3, 6) способом парной нулевизации. 45

1-й шаг: А14 —— А — C14 (1, 2, 2, 3, 6) — (1, О, 3, 3, 3)=(0, 2, 4, О, 3) 8

"> "n tn tin

P„(C1, — константа из набора С1,, у котоРОй 111 — — а, ln ап) .

2-й шаг. Вычисляется разносгь Агп I — А1п— — С2п — 1: (О, О, S3» ° ° Sn — 2, О> О, 5п; 1.).

Обращение в нуль цифр по основаниям Рг и

S S >- > -> ги — 1>

Р l (C2„ " — константа из набора Сг

Г I

Кото ро и f gq 52 12п 1 — 5п 1) 1 —" — 1 г г

Вычисляется разность $ „ .>>. 1

2 2

А,„=А, — С, =0,0,...,0

2 2 2 2 2 2

Р „ /С„, — константа — +I — — +1

2 >>, 2 2

Если теперь Sn, +О, то число A неправильное.

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

Приведем иллюстрирующий пример. Составим необходимые константы для парной нулевизации по основаниям (2, 7) — первая пара и (3, 5) — вторая пара.

О, 7)

1, 1)

2, 9)

3, 3)

4, О)

5, 5)

6, 2) О, 9) (О, 2, 1, О, 1)

О, 2) (О, 2, 2, О, 6)

О, 6) (О, 2, 3, О, 10)

О, О) (О, 2, 4, 0, 3)

2-й шаг: Аг;, =А,4 — Сгз = (О, 2, 4, О, 3)—

24 (О, 2, 4, G, 3) =(0, О, О, О, О).

Здесь St; = О. Число Л вЂ” правильное.

Пример 7. Проверить на правильность

231225

10 проникнуть необнаруженная ошибка, посколь ку это могло бы произойти только в том случае, когда результат вычислений был бы правильньв, но в то же время не истинным числом. Согласно же данной теореме как раз этого быть не может.

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

Самоустранение ошибки может произойти как при нало>кении нескольких сбоев по данному основачию, так и при одиночном сбое.

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

Возможность при данной системе обнаружения ошибок проверять только выходные конечные результаты цепи операций эквивалентна по своему эффекту выполнению второго просчета. Такой режим работы цифровой вычислительной машины повышает ее эффективную производительность в два раза.

Рассмотрим практическую реализацию устройств для обнаружения ошибок.

Пусть арифметическое устройство предназначено для работы в диапазоне представления чисел (О, Р) = (0,106). Для реализации указанного диапазона может быть выбрана система остаточных классов с основаниями

PI — — 17 P2 — — 19 P6 — — 23 Р4 = 27 Р„.- = 29

Р6 31 °

Введем дополнительно контрольное основание

P, = 32, взаимно-простое с выбранными рабочими основаниями. Число А в этой системе представляется в виде А = (а1, а2, аз, а4, аз, а6, ат). Тогда для обнаружения ошибки в цифре отдельного основания может быть предложено несколько способов.

Способ 1. Поскольку анализировать число на правильность можно не при каждой операции, а после целого этапа расчетов, то практически без уменьшения производительности

ЭВМ указанный анализ может производиться программным методом.

В накопителе вычислительной машины разместим таблицу для нулевизации в соответ65 числа А = (О, 2, 3, 3, 6) способом парной нулевизации.

1-й шаг: А „= А — C14 =- (О, 2, 3, 3, 6) — (О, 1, О, 3, 10) =(О, 1, 3, О, 7)

2й шаг: Аз=А4 — С2з = (О, 1, 3, О, 7)— — (О, 1, 3, О, 6) = (О, О, О, О, 1).

S6 = 170. Число А — неправильное. При. его получении имела место ошибка.

Таким образом, предложенные способы позволяют обнаружить ошибку в кодовом слове (числе), независимо от того, возникла эта ошибка при передаче информации или при ее обработке в арифметическом устройстве ЦВМ в системе остаточных классов.

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

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

ЦВМ программе индивидуально, в соответствии с особенностями программы. Возможность такого режима реализации контроля, который значительно повышает эффективность предлагаемой системы обнаружения, основывается на следующей теореме.

Теорема. Пусть выполняется некоторая цепь рациональных операций, результат которых (истинный), в случае отсутствия ошибок в ходе вычислений, должен быть правильным числом и пусть в процессе вычисления имел место один или несколько сбоев по одному из оснований системы. Тогда конечный результат вычислений по цепи либо неправильный, либо истинный.

Действительно, пусть истинным результатом вычислений по цепи операций должно быть число К =- (к1, кз, ..., к +1), а получено число А = (aI, а2,..., а1,..., а, 1).

Если сбой имел место по основанию Р,, то

> i, g = 2, ° ° f — I = ff — 1, fn ° ° °, "п+1 — Хи+1 °

Что касается а1, то возможны два варианта:

1) а1ф > .1 и 2) а1 — х1.

В варианте 1, согласно теореме 2, число А неправильное. B варианте 2 число А правильное и при этом совпадающее с К, т. е. А является истинным значением конечного результата цепи.

Установленный, казалось бы, весьма простой факт важен для построения системы обнаружения ошибок в цифровой вычислительной машине в системе остаточных классов. Он свидетельствует о том, что в конечный результат вычисления по цепи операций не може

60 ствии с адресами (а1, а6), (а2, аз) (аз +4)

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

5

15 няем за три сложения с последующим анализом на 0 и выработкой признака в такого, что

1, если результат нулевой

О> = или

0 в остальных случаях.

Если в результате проверки окажется, что а = О, это значит, что имела место ошибка, а передачей управления по о мы можем перевести ЭВМ в режим исправления ошибки. При этом способе в ЭВМ никакие дополнительные цепи для обнаружения ошибки не вводят.

Операция обнаружения занимает три рабочих такта сложения (вычитания), а для хранения констант в накопителе ЭВМ должно быть зарезервировано Р Р6 + Р Р; + Р Р4 рабочих ячеек. В нашем случае требуется 17 ° 31+

19 ° 29+23 27=1699 ячеек, т. е. при отсутствии дополнительного оборудования требуется занять довольно большой участок емкости накопителя.

Способ 2. Тот же программный метод может быть приложен к непарной нулевизации.

По значению каждой цифры (рассматривая ее как адрес) а>, а, аз, а, а.-, а последовательно находим константу нулевизации и складываем (вычитаем) ее с остатком исходного числа. Результат проверяем на нуль. При этом потребуется выполнить шесть операций сложения (вычитания). В накопителе требуется зарезервировать под константы P + P + Рз +

Р4+ Р5 + Pg — — 17+19+23+27+29+31 = 146 ячеек, т. е. вместо трех операций нулевизации требуется выполнить шесть операций, но зато количество требуемых ячеек накопителя сокращается более чем в десять раз. Нестандартного оборудования не требуется.

Способ 3. Нулевизация проводится последовательно по цифрам а, а, а, а4, а,-, а с анализом результата на нуль. Константы нулевизации закоммутированы в регистрах 1 вне накопителя (см. фиг. 1) .

По значениям цифр числа, хранящегося в арифметическом устройстве 2, производится последовательное обращение за константами нулевизации и их последовательное сложение (вычитание) с остатком от исходного числа.

По цифре а мы выбираем «константу а»>, имеющую все цифры, кроме а, и складываем с исходным числом. Г(о цифре а выбирается

«константа а>», имеющая цифры аз, а, а.-, а, а>, и складывается с числом из устройства 2.

По цифре а константа состоит из цифр а4, а.-, ав, ат. По цифре а складываем с содержимым сумматора число с цифрами а.-, а6, ат. Полученная цифра а5 определит «константу а5» с

55 цифрами ав и а . И, наконец, полученная цифра а6 определит константу для разряда а>.

После выполнения указанной процедуры анализируем на «О» цифру ат. Ее не нулевое значение говорит о наличии ошибки, нулевое — об отсутствии, Указанный способ требует нестандартного оборудования, однако места в оперативном накопителе под константы не требуются, а в оборудовании учитывается последовательное уменьшение разрядности констант.

Способ 4. Тот же метод, что и в способе 3, может быть использован для парной нулевизации. Устройство (фиг. 2) при этом содержит арифметический регистр 8 и регистры констант 4, выбираемых по и и а г.

Предмет изобретения

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

2. Способ по п. 1, отличающийся тем, что, с целью дальнейшего ускорения процедуры обнаружения ошибки, выбирают константы, анализируя по две крайние цифры i-ую и (и— — i)-ую íà i-ом шаге процедуры, причем переходят к анализу (+ 1) и (и — — 1) цифр. если обе цифры равны нулю, и формируют сигнал ошибки, если результат не равен нулю.