Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по ТСА.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
914.94 Кб
Скачать

5.1.4.Вычисление специальных функций.

Для вычисления специальных функций ( , , , , , ) применяются специальные алгоритмы. Функции , , можно вычислить, воспользовавшись их разложением в ряд [6] (см. Табл.  5 .6).

Число членов ряда определяется исходя из условия получения требуемой точности.

Для вычисления функции с точностью до целых чисел можно применить алгоритм, основанный на том, что квадрат числа можно определить сложением последовательности нечетных чисел (см. Табл.  5 .7).

Из приведенного примера видно, что какое число необходимо возвести в квадрат, такое количество последовательных нечетных чисел, начиная с 1, и необходимо сложить.

Вычисление специальных функций по приведенным выражениям занимает длительное время и обеспечивает низкую точность. Это обусловлено небольшой длиной машинного слова и ограниченным быстродействием МП. Поэтому, в тех случаях, когда ставятся жесткие условия по быстродействию и точности, применяется вычисление функций с помощью таблиц. Программа Прогр.  5 .11 (см. ниже) иллюстрирует это.

Программа Прогр.  5 .11 определяет квадрат чисел от 0 до 10 включительно. Входной параметр программы – число x. Оно записывается в регистр L. Выходной параметр – значение x в регистре Н.

Табл. 5.6. Примеры разложения некоторых элементарных функций в степенной ряд (ряд Тейлора).

Табл. 5.7. К вычислению квадратного корня с точностью до целых чисел.

Число

Сумма нечетных чисел

Результат

1

1

= 1

2

1 + 3

= 4

3

1 + 3 + 5

= 9

4

1 + 3 + 5 + 7

= 16

5

1 + 3 + 5 + 7 + 9

= 25

Прогр. 5.11. Программа для определения квадрата чисел от 0 до 10 включительно.

LAB_1 :

MVI H, 00h

;Очистить регистр Н.

LXI D, 0100h

;Загрузить начальный адрес таблицы.

DAD D

;Получить адрес элемента.

MOV H, M

;Загрузить его в регистр Н.

JMP LAB_1

;Безусловный переход для организации вечного цикла.

HLT

;Выход из программы.

;Таблица квадратов целых чисел:

; 0100 00h

; 0101 01h

; 0102 04h

; 0103 09h

; 0104 10h

; 0105 19h

; 0106 24h

; 0107 31h

; 0108 40h

; 0109 51h

; 010A 64h