Программа отыскания неисправностей в системе

Для реализации алгоритма, система делиться на блоки. Эти блоки нумеруются. Системе ставится в соответствие двоичный код, число разрядов которого равно числу блоков.

Алгоритм является полностью формализованным и поэтому легко реализуется на ЭВМ.

При составлении программы вводится понятие состояния S и проверки П системы. Для простоты введем ограничение, что неисправен только один блок.

Состояние S кодируется следующим образом:

0ставится в тех разрядах, которые составляют проверенным и исправным блокам.

1 – на месте неисправных или непроверенных боков.

Чаще всего исходное состояние системы - все единицы (не проверен ни один блок).

Пример: в системе 3блока, и 2 блок проверен и исправен.

Тогда исходное состояние S=101.

 

 

 


Проверки кодируются так:

0 – ставится в тех разрядах, соответствующие которым блоки проверяются;

1 – в остальных разрядах.

Пример:для структуры, изображенной ниже возможны три проверки.

 

П2 Проверки П1, П2 и П3.

Их коды:

П1 = 011

П3 П2 = 001

П3 = 010

П1

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

 

Код последующего состояния определяется по следующим правилам:

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

Пример:

Исходное состояние системы: Si=1111; Si 1111&

Проверка: Пi=0011 Пi 0011