Твитнуть
Бинарный метод поиска заключается в использовании первой серии прыгать прыжок порядка в "среднее значение" по сравнению с запросом значение, а затем следуйте отношение больше или меньше, чем "среднее значение", чтобы определить число отказ ищете в регионе. Эта статья дает бинарный алгоритм цифровой обработки сигнала применяется в двоичный алгоритм поиска для достижения конкретного метода. Учитывая программного обеспечения с помощью этого метода.
Ключевые слова: бинарный поиск бинарных DSP
1, основной принцип бинарного поиска
За последние десять лет, с различными типами интегрированных однокристальных цифровой сигнальный процессор (DSP, Digital Signal Processor) производительность продолжает меняться, фазы отмечают улучшение программного обеспечения и средств разработки, быстрое снижение цен. Они имеют сильные функции, высокую степень интеграции, гибкого применения и высокая стоимость эксплуатационные преимущества для обработки информации (например, различные голоса и обработки изображений), связи, мультимедиа, интегрированной сети, контроль, потребительской электроники, медицинского оборудования, тестирования и оборудование, и многих других областях была очень обширной. Существует мнение, что: "СКМ" типа обработки транзакций процессора, такие, как на выключатель или логической операции, и т.д.; цифровой процессор сигнала типа процессора обработки данных, таких как обширные данные, включая БПФ, в том числе работает и так далее. Эта точка зрения в некоторой степени, есть определенные причины. В общем, DSP приложений и обрабатываемых данных, а также в режиме реального времени вычислительные требования больших высоких ЦОС себя (включая аппаратное и программное обеспечение) преимущества быстрого и эффективного осуществления алгоритм имеет важное практическое значение.
Интеллектуальная система часто используется, чтобы найти операцию, для достижения различные поисковые методы, такие как последовательный поиск, бинарный поиск и поиск блоков и так далее. В этих методов, если хранения структуры организации для того, чтобы найти таблицу всех элементов данных, упорядоченных по ключевому слову, вы можете выполнить двоичный поиск (или бинарный поиск). Основная идея заключается в следующем: данные в таблице поиска отсортированы по ключевым словам (при условии порядке возрастания), по одному для того, чтобы найти не сравнить, и может прыгать путь сначала с "средней позиции" ключевое слово сравнения записей Если же, добиться успеха, если данное значение большее, чем "среднее положение" ключевое слово, в последней части бинарный поиск, или первой половине бинарный поиск.
2, выключение звука на алгоритм поиска в реализации DSP
Двоичный алгоритм двоичного поиска (Binary Алгоритм поиска) осуществляется на DSP не сложно, но, как правило, не достаточно, чтобы найти программы используют передовые DSP внутреннюю структуру и набор команд, так что программа не смогла уменьшить время работы к минимуму. Это не помешает время от времени эффективность системы, но большой объем данных в системе и требующие реального времени ситуацию, необходимо сделать все возможное для повышения эффективности процедуры. Эта статья дает пример TMS320C50 двоичный алгоритм поиска, подпрограмма, программа может найти эффективность системы значительно улучшилось.
Полное использование счетчика решении инструкции немного TMS320C50 которые могут быть проверены в каждой половине рабочего процесса, для поиска и освобождения аккумулятора на другую работу. Кроме того, программа использует условного выполнения команд (XC), а не с помощью традиционных условиях конверсии образования, с тем, что спасет цикл обучения и повышения эффективности. TMS320C50 набор инструкций конкретных обратиться к другой литературе [1].
В данной статье описывается процесс бинарного поиска, проведенного в упорядоченное состояние. Она предполагает, что данные в таблице в порядке от низкого до высокого порядка, максимальное количество адресов в памяти больше всего. Конечно, наоборот (высокое минимальное число битов в адресе) также верно. Кроме того, программа предполагает, что максимальное количество данных степень числа 2, исходной программы приводится ниже номер 2 11.
TMS320C50 из источника:
. Bss NTABLE, 800h; 2 до 11 раз сила пространства данных (в порядке от низкого до высокого)
. Bss ВЗГЛЯД, 1;, чтобы найти число
. Mmregs
. Текст
.
.
.
вызова bsearch
.
.
.
;***********************
; Двоичных подпрограмму поиска
; Название программы: binsearch
; Входных параметров: (АКК) из двоичного числа, чтобы найти
; Параметры экспорта: (АКК) двоичного числа, чтобы найти адрес (данные можно найти)
(АКК) = 0 (данные не найдены)
;***********************
Бен-поиск частности AR0, # 0800h; AR0 общее количество данных
Мар *, AR0
Мар * BR0 +, AR3, половина от общего числа объективных
В частности AR3, # NTABLE; AR3 указывает на начало еще нескольких
LaCl # 11; повторять 2 N-й степени, количество рядов данных N-й степени из 2
Samm BRCR; повторяет расположен в BRCR в
ЛДП # LOOK
кружева вид; чтобы найти данные, хранящиеся в АКК в
к югу *; и AR3 хранения данных подразделения смысл вычитания
bcnd nothere, LT; АКК значение меньше 0, чтобы найти данные не в этой серии
rptd nothere-1
Бенд найден, эквалайзер; хит данных
XC 1, GT, если данные в большей АКК
Мар * 0 +, AR0;
XC 1, LT; меньше, если данные в АКК
Мар * 0 -, AR0;
Мар * BR0 +, AR3; пространство поиска в два раза
LACC LOOK
к югу *
;***********************
; Не найдено, АКК значение 0 после возвращения
;***********************
nothere отставке
Зак
NOP
;***********************
; Найти данные, данные, хранящиеся в АКК обратный адрес
;***********************
Найдено ЛДП # 0
APL # 0fffeh, PMST; сбросить немного PMST
находящийся в отставке
Ламм AR3; данных адресов памяти
NOP
3 Помощь
Процедуры более подробно описаны функции, необходимые для завершения каждого этапа, следующих ключевых областях для некоторых инструкций.
(1) программы, если она считает, данные, чтобы найти адрес, по которому данные возвращаются, не отправляются в 0, чтобы найти зарегистрироваться АКК.
(2) программы Мар BR0 +, AR3 является текущей AR (вспомогательный регистр) содержание указанного памяти данных путем добавления обратного осуществлять содержание AR0. Как Директивы до Мар *, AR0 инструкции, данной инструкции указывается следующая инструкция из вспомогательных регистров. Таким образом, осуществление MAR BR0 +, AR3, вспомогательных регистров AR0 фактически обратной фазы с собственным добавить:
В результате половина исходных данных. Настоящая инструкция является на самом деле алгоритм двоичного поиска для определения "среднего".
(3) Samm процедуры команды BRCR осуществляется с rptp nothere-1 команды с использованием. Samm директивы функция значение числа циклов (здесь 11) хранятся в BRCR. BRCR (Блок Повторите регистра счетчика) является 16-битный регистр, используемый для хранения число повторных блока. Rptp команда неоднократные указания, его функция заключается повторить следующей инструкции для инструкций в указанный адрес кода, количество повторений определяется brcr. В приведенной выше программе, RPTR директива определяет адрес nothere-1, а именно: Повторите процедуру, пока nthere bcnd найден код из предыдущей инструкции Sub *.
XC инструкции по использованию являются:
XC K [, Cond1] [Cond2] [...]
Обучение в K = 1 или 2. Cond1, Cond2 это условие. XC функций команды в случае условий, осуществление инструкций следующие команды К, К 1, затем выполните инструкции, K для двух выполнить две команды. Условие не выполняется по осуществлению статьи К инструкции NOP.
(4) исходный код, написанный с использованием TMS320C5X набор команд, и если это TMS320C5X серии DSP, может быть задан непосредственно выше процедуру в качестве подпрограммы в использовании. Для TMS320C2XX серии DSP, так как инструкции по команде TMS320C2XX TMS320C5X имеет обратную совместимость, так и в подготовке бинарный поиск процесс TMS320C2XX должны внести некоторые изменения, такие, как упоминалось ранее инструкции программы Samm в TMS320C2XX набор инструкций, нет. Таким образом, если вы хотите достичь с заявлением Samm TMS320C2XX в этом случае функции, вы можете повторить число операций, сохраненные во внутренней памяти, вместе с инструкциями для завершения цикла TMS320C2XX Samm и функции rptp команды. Но это приведет к программе эффективности исполнения. Кроме того, что мощность обработки данных, чем TMS320C2XX TMS320C5X слабым, главной причиной является разница между набором команд.