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

Si+1 1100

Si+1 0011

2. При отрицательной проверке код нового состояния будет результат операции & над кодом текущего состояния и инверсного кода проверки.

Пример:

 

Si 1111&

Пi 1100

 

Пусть система состоит из семи блоков, как показано на рисунке ниже

 

 

 
 


S1234567 = 1111111 – исходное состояние системы, все блоки не проверены.

 

Ниже приведены все возможные проверки.

 

П1= 0111111; П5= 0011011;

П2= 0011111; П6= 0011101;

П3= 0001111; П7= 0011100.

П4= 0000111;

 

При составлении программы допускается произвол (с какого узла начинать, какую делать проверку).

 

+ S4

+ S34 П3 0001111

+ S3467 П7 0011100 0011000

П5 0011011 0011011 - S3

S1234567 S67

1111111 S125 - 0000011 + 0000100 S5

_ 1100100 П2 0011111 S2

S12 П1 0111111 +

- 1100000

- S1

При положительном исходе при П5 новое состояние S3467. При отрицательном – S125. Для состояния S3467 могут делаться 3,4,6,7 проверки. Допустим делаем 7 проверку – П7: при положительном исходе S34, при отрицательном - S67, так продолжается до тех пор, пока в коде состояния будет лишь одна 1, она указывает на неисправный блок. При составлении программ необходимо учитывать следующее:

если в программе уже была проверка Пi, то ее вторично делать не нужно, т.к. новое состояние совпадет со старым;

если при выборе очередной Пi попадаем в состояние из которого выходили, то надо выбрать другую допустимую проверку.