Составители:
63
Подпрограмма умножения выходного сигнала на
весовой коэффициент. Данная подпрограмма реа лизует вы-
числение произведений b
i
y[k–i], в которых величины b
i
и y[k–i] являются
2-байтовыми словами (16-разрядными двоичными целыми числами). Их
произведение является 32-разрядным двоичным числом, к о торое фор миру-
ется в процессе выполнения по дпрограммы в двух регистровых парах – DE
и HL (соответственно старшие и младшие два байта), а затем помещается в
4-байто вую ячейк у памяти PLUS (см. табл. 6.2).
Подпрограмма алгоритмически реализована аналогично вышеопи-
санной и отличается от нее только длиной множителя (и соответствен-
но распределением регистров). В соответствии с длиной множителя
возрастает вдвое число итераций. Соответственно среднее время вы-
полнения данной подпрограммы более чем в 2 раза превышает время
выполнения первой подпрограммы, по этому и следует применять пер-
вую подпрограмму везде, где это позволяют размеры операндов.
Вызов подпрограммы умножения слова на слово осуще ствляется с
адреса 0228Н.
Входными регистрами по дпрограммы являются регистровые пары ВС
и DE, хранящие множимое и множитель в прямом коде (знак-модуль).
Выходным регистром является флажок знака МП, возвращающий знак
произведения, 4-байтовый модуль которого помещается во временную
ячейку памяти PLUS. Подпрограмма сохраняет неизменным значение
регистровой пары HL.
Текст подпрограммы представлен в прил. 6.2.
Подпрограмма сложения/ вычитания 4-байтовых
чисел. По дпрограмма ос уществляет алгебраическое слож ение резуль-
тата выполнения одной из подпрограмм умножения (бе з знакового 4-
байтового целого в ячейке памяти PLUS) с ячейкой SUM, хранящей
сумму y[k] с размещением результата в той же переменной SUM в до-
полнительном коде. Знак числа, хранимого в PLUS, передается во фла-
ге знака МП.
Алгоритмически подпрограмма состоит из проверки знака слагаемо-
го с последующим разделением на две однотипные процедуры: сложе-
ния и вычитания многобайтовых целых чисел, хранимых в памяти и
адресуемых указателями в регистровых парах. В данном случае длина
операндов фиксирована как 4. Результат операции формируется в до-
полнительном коде.
Вызов подпрограммы сложения осуществляется с адреса 025СН.
Страницы
- « первая
- ‹ предыдущая
- …
- 61
- 62
- 63
- 64
- 65
- …
- следующая ›
- последняя »