Функции БПП. Часть 1.

БПП «Электроника МТ-70М» выполняет 143 алгоритма, реализованных с помощью библиотеки стандартных программ.

В отличие от БПП «Электроника МТ-70» для некоторых алгоритмов используется три входных массива (вектора). Кроме того, вместо одного из входных векторов можно использовать его дополнения (признак F).

Все алгоритмы (и программы), реализуемые БПП, могут быть разделены на 10 групп в соответствии с функциональным назначением и представлением исходных данных и результатов.

В первую группу входят алгоритмы, осуществляющие поэлементные арифметико-логические преобразования над вектором. Исходные данные — вектор или скаляр, результат — вектор, состоящий из преобразованных элементов исходного вектора.

Например, при сложении вектора со скаляром (А, I, В, С, К, N) скаляр, расположенный в ячейке с адресом В, прибавляется к каждому из N элементов вектора начиная с адреса А. Результаты заносятся в вектор начиная с адреса С с приращением К. Пусть параметры программы имеют следующие значения: 0, 1, 200, 400, 1, 100. Это значит, что суммы чисел, расположенных в ячейках 0 и 200, 1 и 200, ..., 98 и 200, 99 и 200, заносятся в ячейки 400, 401, ... ..., 498, 499 памяти данных БПП. Программа нахождения натурального логарифма элементов вектора (А, I, С, К, N) производит вычисление натуральных логарифмов каждого из N элементов вектора начиная с адреса А с приращением I. Результаты заносятся в вектор начиная с адреса с приращением К. В случае отрицательного числа логарифм вычисляется от абсолютного значения числа. Логарифму нуля присваивается значение 2-512. Если параметры программы имеют значения 0, 2, 200, 1, 50, то натуральные логарифмы чисел, расположенных в ячейках 0, 2, ..., 96, 98, помещаются в ячейки 200, 201, ..., 248, 249. Следует заметить, что в программе очистки элементов вектора вектор результата помещается в ячейки исходного вектора.

Ко второй группе относятся алгоритмы, вычисляющие некоторый функционал над элементами вектора (векторов). Вектор является исходным, результатом — скалярная величина. В качестве примера в этой группе рассмотрим программу вычисления скалярного произведения элементов двух векторов и дисперсии элементов вектора. Скалярное произведение (А, I, В, J, С, N) получается путем сложения N произведений элементов двух векторов, начиная с адреса А (с приращением I) с адреса В (с приращением J). Результат заносится в ячейку с адресом С.

При вычислении дисперсии элементов вектора (А, I, С, N) складываются квадраты N элементов вектора, начиная с адреса А с приращением I. Полученная сумма делится на число элементов N и результат заносится в ячейку с адресом С. Например, параметры программы вычисления среднего значения квадратов элементов вектора (0, 1, 200, 5), а в ячейках 0 ... 4 содержатся числа — 1.0; 7.0; —3.0; —9.0. Тогда в ячейке 200 будет получен результат 28.0. Эта программа, в свою очередь, использует программы вычисления суммы квадратов элементов вектора, деления двух чисел и перевода целого числа, содержащегося в РОН, в формат числа с плавающей точкой СОЗУ.

Третья группа алгоритмов выполняет операции сравнения двух действительных векторов и на основании этого создается третий. Суть программ ясна из таблицы и не требует дополнительного объяснения.

Четвертая группа алгоритмов реализует операции над комплексными векторами или комбинациями действительных и комплексных векторов. Элементы комплексного вектора должны занимать две последовательные ячейки памяти данных. Если комплексный вектор представлен в прямоугольной системе координат, то мнимая часть следует за действительной, если в полярной, то аргумент в радианах следует за модулем каждого элемента. Начальный адрес вектора указывает адрес действительной части первого элемента, а приращение адреса — это приращение действительных частей, поэтому оно должно быть не менее 2. В этом случае число элементов N — это число пар действительных и мнимых частей. Например, при формировании комплексного вектора из двух действительных (А, I, В, J, С, К, N) формируется комплексный вектор, начиная с адреса С с приращением К, используя элементы вектора с начальным адресом А (с приращением I) как действительные части и элементы вектора с начальным адресом В (с приращением J) как мнимые. Пусть заданы следующие параметры этой программы: 0, 1, 100, 1, 200, 2, 50, тогда числа из ячеек (0, 100), (1, 101), ..., (49, 149) заносятся в ячейки (200, 201), (202, 203), ..., (298, 299) памяти данных. Вторым примером из этой группы программ может служить программа преобразования комплексного вектора из полярной системы координат в прямоугольную (А, I, С, К, N). При этом преобразуются N комплексных элементов вектора начиная с адреса А с приращением I из полярной системы координат (модули, аргументы в радианах) в прямоугольную (действительные, мнимые части), а результаты заносятся в комплексный вектор, начиная с адреса С с приращением К. В этой программе используются программы первой группы: косинуса и синуса элементов вектора.