|
Уважаемые, подскажите пожалуйста алгоритм...
В ОЗУ в идеале, должны распологаются цифры следующим образом:
0A 0A 0A 0A 03 03 03 03 10 10 10 10 07 07 07 07 .... и так далее
по четыре ОДИНАКОВЫЕ цифры.
... и я знаю точный адрес начала первой 0A, первой 03,...
но на практике массив может распологаться следующим образом:
0A 30 0A FF 03 03 FC 03 B4 10 10 10 07 08 07 07 ....
или вот так
0A 30 0A 03 03 FC 03 03 B4 10 10 10 10 07 08 07 05 05 05 05 ....
т.е. может быть совсем не 4 одинаковые цифры, а 3, 4, или 5
Задача следующая:
Мне нужно выбрать цифру которая чаще всего встречается в этом блоке (0A 30 0A) (из 3-5 цифр) и отложить её в некий буфере, потом перейти к следующему блоку (03 03 FC 03 03)...
Самое противное то, что блок в массиве может состоять из 3-5 цифр, а должен состоять из 4! (в идеале).
Знаю что нечто подоброе используется в программах АОН'а, для определения истинного номера из сырого кода... но мне это найти не удалось.
Прогу пишу под PIC или Holtek.
Буду признателен за помощь в написании алгоритма.
С уважением, Игорь
E-mail: info@telesys.ru