Вид РИД
Изобретение
Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении соответствующих конечных автоматов. Техническим результатом является упрощение сравнения многоразрядных двоичных чисел за счет использования последовательности одинаковых операций, регулярности структуры вычислений. Способ заключается в следующем: для нахождения наибольшего и наименьшего чисел в массиве (в области памяти) выделяются наибольшее и наименьшее числа среди трех (в трех последовательных ячейках памяти) элементов массива, к этим выделенным числам добавляется очередной элемент массива, вновь находятся среди них наибольшее и наименьшее, и так далее до последнего сравниваемого элемента массива (ячейки памяти), а результатом, наибольшим и наименьшим элементами всего массива являются последние из полученных наибольших и наименьших значений. Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении соответствующих конечных автоматов. Известны способы сравнения двоичных чисел (см., например, Справочник по цифровой вычислительной технике. Малиновский Б.Н., Александров В.Я., Боюн В.П. и др. / Под ред. Б.Н. Малиновского. Киев: Техника, 1974 г.), Шевкопляс Б.В. Микропроцессорные структуры. Инженерные решения: Справочник. М.: Радио и связь, 1990 г., патент RU 2300134). К причине, препятствующей достижению заявляемого технического результата, относится то, что эти способы ориентированы только на однозначные двоичные числа.
Известны также способы сравнения и нахождения наибольших и наименьших чисел и устройства для их реализации (Патенты RU 2298219, 2300133, 2361266, 2363034, 2365975, 2389063). К причине, препятствующей достижению заявляемого технического результата при использовании этих известных селекторов двоичных чисел, относятся ограниченные функциональные возможности, обусловленные тем, что выполняется селекция только большего или только меньшего из указанных двоичных чисел.
Наиболее близким способом и устройством для его реализации того же назначения к заявленному изобретению по совокупности признаков является, принятый за прототип, селектор двоичных чисел (патент РФ 2365975, кл. G06F 7/02, 2007 г.), состоящий в том, что технический результат при осуществлении изобретения достигается тем, в что включает 2n-1 элементов «2ИЛИ», 4n элементов «Запрет», 2n замыкающих и 2n размыкающих ключей, причем все элементы и ключи сгруппированы в n групп так, что j-я
группа содержит два элемента «2ИЛИ», четыре элемента «Запрет», два замыкающих и два размыкающих ключа, в j-й группе выход i-го
элемента «Запрет», подключенного инвертирующим входом к неинвертирующему входу (3-i)-го элемента «Запрет», и выход (2+i)-го элемента «Запрет», подключенного инвертирующим входом к второму входу (3-i)-го элемента «2ИЛИ», соединены соответственно с неинвертирующим входом (2+i)-го элемента «Запрет» и первым входом i-го элемента «2ИЛИ», подсоединенного выходом к входу управления объединенных выходами i-ых замыкающего и размыкающего ключей, входы которых соединены соответственно с неинвертирующим и инвертирующим входами первого элемента «Запрет», выход i-го элемента «2ИЛИ» предыдущей группы соединен с вторым входом i-го элемента «2ИЛИ» последующей группы, а второй вход i-го элемента «2ИЛИ» первой группы, неинвертирующие входы первого, второго элементов «Запрет» и выходы первого, второго замыкающих ключей j-и группы соединены соответственно с шиной нулевого потенциала, j-ым, (n+j)-ым входами и j-ым, (n+j)-ым выходами селектора двоичных чисел. Недостатками этого способа и устройства его реализующего являются невозможность получения наибольшего или наименьшего значений массива данных и относительная сложность реализации. Техническим результатом данного изобретения является упрощение сравнения двоичных чисел за счет четырех элементов селекции, входами которых являются три исходных числа, а выходами два - наибольшее и наименьшее из этих трех. Указанный технический результат при осуществлении изобретения достигается тем, что в способе сравнения двоичных чисел формируются две пары из трех чисел а3, а2, a1, например, < max{а3, а2}, min{а3, а2} > и < max{a2, a1}, min{a2, a1} > (фиг. 1), а затем находят наибольшее max{max{а3, а2}, max{a2, a1}} и наименьшее min{min{а3, а2}, min{a2, a1}} значения чисел а, b с. Полученная таким образом ячейка 2i (фиг. 1) используется для завершения операции поиска наибольшего и наименьшего чисел во всем массиве (фиг. 2).
В качестве формирователя max/min из двух чисел может быть использовано устройство (патент RU 2365975 G06F 7/02).
Сведения, подтверждающие возможность осуществления изобретения с получением вышеуказанного технического результата, заключаются в следующем.
В заявляемом способе сравнения двоичных чисел для нахождения наибольшего и наименьшего чисел из массива реализуются две последовательности:
1. max {an, max{an-1, max{an-2, max{… max{а4, max{а3, а2, а1}…}}}
2. min {an, min{an-1, min{an-2, min{… min{a4, min{a3, a2, a1}}…}}} Вышеизложенные сведения позволяют сделать вывод, что предлагаемый способ сравнения двоичных чисел обеспечивает нахождение наибольшего и наименьшего чисел из массива данных.
Алгоритм реализации заявляемого способа включает:
1) перенос элементов массива исходных данных из памяти (ячейки 3i
) на внутренний носитель - регистры 4;
(фиг. 2);
2) пересылку первых трех элементов массива данных с регистров 41-43 на входы a1, а2, ai ячейки 21 (фиг. 1);
3) поиск наибольшего и наименьшего значений среди трех элементов массива данных и подачу результатов этого поиска на входы, соответственно, а1 и а2 ячейки 22;
4) подача значения очередного элемента данных на вход я, ячейки 22;
5) продолжение операций пп. 3 и 4 до тех пор, пока не будут обработаны все n элементы массива. На выходах max и min ячейки 2n-2 окажутся наибольшее и наименьшее значения исходного массива данных.
Примеры выполнения вычислений по данному способу.
1. Пусть а3>а2>a1>а4, тогда на выходах ячейки 21 окажутся значения, соответственно, max=а3, min=a1. На выходах ячейки 22, соответственно, max=а3, min=а4.
2. Пусть а3=а2>a1>а4, тогда на выходах ячейки 21 окажутся значения, соответственно, max=а3, min=а1. На выходах ячейки 22, соответственно, max=а3, min=а4,
3. Пусть а3=а2>a1=а4, тогда на выходах ячейки 21 окажутся значения, соответственно, max=а3, min=a1. На выходах ячейки 22, соответственно, max=а3, min=a1.
4. Пусть а3=а2=а1>а4, тогда на выходах ячейки 21 окажутся значения, соответственно, max=а3, min=а3. На выходах ячейки 22, соответственно, max=а3, min=а4.
Предложенный способ нахождения наибольшего и наименьшего элементов массива данных произвольного объема n позволяет использовать устройства его реализующие как для сортировки данных, так и в процедурах обработки нечеткой информации, в частности, для операций объединения и пересечения при мягких вычислениях.
